imacros中使用變數

2021-05-02 02:15:16 字數 3063 閱讀 9887

在這篇教程中我們將學習如何在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錯誤...