在這篇教程中我們將學習如何在imacros中使用變數。
在imacros中有兩種型別的變數:內建變數和使用者定義的變數。
內建變數:
內建變數是用來界定某些效能的巨集觀的行為,例如巨集超時值:
set !timeout 33
執行上面一句意味著設定頁面超時時間為33s
有三個特殊的內建變數, !var1 , !var2和!var3。這些變數可以設定為任何你自定義的值。
例如:set !var1 helloworld
設定!var1為 helloworld (ps: 代表空格
代表回車)
prompt pleaseentertext !var1
彈出乙個輸入框,你在輸入框中輸入的內容將傳到!var1中。
使用者定義的變數:
自定義變數是使用者在外部控制時傳入的變數。例如在visual basic指令碼示例這將如下所示:
iret = imacros.iimset("-var_item", "15")(ps:有時候也可以這樣設定:iimset("item", "15"),設定變數item)
在呼叫的地方使用}替換要代替的數值。
imacros讓您指定文字檔案, csv檔案作為輸入。
例如這樣乙個csv檔案:
"artist" , "album title" , "price"
"beatles", "abbey road", "13.49"
"beatles", "the beatles 1,2,3" , "25.49"
"mozart" , "symphonies no.40 & 41", "9.98"
"mozart", "requiem", "7.50"
這個檔案的檔名為onlineauction.csv
我們現在需要告訴imacros巨集如何找到這個資料輸入檔案。為此,我們使用內建的變數!datasource
set !datasource onlineauction.csv
如果您不使用任何路徑資訊datasource的路徑預設定位在標準資料來源的目錄,可在選項對話方塊中指定這個路徑。預設路徑是imacros資料路徑下的datasources資料夾。
選擇好資料原始檔後我們需要告訴imacroscsv檔案有多少列。我們用!datasource_columns變數設定:
set !datasource_columns 3
此數字必須完全匹配輸入檔案的列數
既然我們要插入的所有資料集,我們需要的巨集迴圈來控制。
set !datasource_line } (ps:loop就是指令碼迴圈的次數,還記得play loop那個迴圈執行按鈕麼~~)
這個內建變數是用來設定讀取檔案的第幾行。
現在,我們已經把準備工作都做好了。接下來我們要讀取出對應的資料。
tag type=input:text form=listing attr=name:name content=}
tag type=input:text form=listing attr=name:album content=}
tag type=input:text form=listing attr=name:price content=}
} 代表的是讀取出對應的第一列資料
資料庫這個例子只適用於專業版。
imacros可以直接從資料庫讀取資料。
這個例子中的**visual basic指令碼連線到microsoft access資料庫: (ps:這個功能我沒有嘗試使用過,誰試驗覺得好用了告訴我:))
' open database
set rs = createobject("adodb.connection")
rs.open("driver=; dbq=" _
& mypath & "iim-test-submit.mdb")
' use sql to select information
sql = "select * from table1"
set rs = rs.execute(sql)
' start imacros
set iim1= createobject ("imacros")
iret = iim1.iiminit
iret = iim1.iimdisplay("submitting data from ms access")
' loop through result dataset
do until rs.eof
'set the variable
iret = iim1.iimset("-var_fname", rs.fields(0))
iret = iim1.iimset("-var_lname", rs.fields(1))
iret = iim1.iimset("-var_address", rs.fields(2))
iret = iim1.iimset("-var_city", rs.fields(3))
iret = iim1.iimset("-var_zip", rs.fields(4))
iret = iim1.iimset("-var_state-id", rs.fields(5))
iret = iim1.iimset("-var_country-id", rs.fields(6))
iret = iim1.iimset("-var_email", rs.fields(7))
'run the macro
'note: this is the same macro, as in the file-2-web-method2.vbs example script!!!
iret = iim1.iimplay("wsh-submit-2-web")
if iret < 0 then
msgbox iim1.iimgetlasterror()
end if
rs.movenext
loop
iret = iim1.iimdisplay("done!")
iret = iim1.iimexit
wscript.quit(0)
makefile中使用變數
makefile裡的變數就像乙個變數,變數的作用主要如下 1 儲存檔名列表。2 儲存編譯器的引數。makefile中的變數是用乙個字串在makefile中定義的,這個文字串就是變數的值。只要在一行的開始寫下這個變數的名字,後面跟乙個 然後跟要設定的這個變數的 值即可定義變數,下面是定義變數的語法 變...
makefile中使用變數
makefile裡的變數就像乙個變數,變數的作用主要如下 1 儲存檔名列表。2 儲存編譯器的引數。makefile中的變數是用乙個字串在makefile中定義的,這個文字串就是變數的值。只要在一行的開始寫下這個變數的名字,後面跟乙個 然後跟要設定的這個變數的 值即可定義變數,下面是定義變數的語法 變...
iMacros 入門教程 內建變數介紹(5)
1 var0 到 var9,這是系統定義的內建變數,專門給你賦值用 就是程式設定了這幾個名字給你賦值 2 內建變數 就是 imacros 設定的特別作用的變數,例如 urlcurrent 這個變數就代表著這個變數是說當前的url http errorcode 這個內建變數主要是顯示出現的http錯誤...