如何在 iMacros 数据源的最后一行之后重新开始
How to start over after the last row in datasource in iMacros
我在一个网站上有超过 10 个帐户,在该网站上我想使用帐户 1 登录,执行一些操作,注销然后登录帐户 2 等等。
在我登录最后一个帐户后,我希望我的宏从帐户 1 重新开始,所以我的数据源中的第 1 行。
我现在正在做的是:
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT=email1
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT=pass1
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT=email2
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT=pass2
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php
以此类推,所以脚本很长,但是可以一直循环
我想要的是从我的数据源加载登录凭据并根据需要重播它们,添加或删除帐户会容易得多。或者更改所有帐户在网站上的操作。
我希望这是可能的!
此致
你的希望很现实。假设您的数据源文件 ('credentials.csv') 如下所示:
email1,pass1
email2,pass2
email3,pass3
...
您可以通过下面的宏在帐户上循环 "infinitely"。只需以非常大的 'Max:' 值(例如 99999)循环模式播放即可。
' rows in the datasource '
SET maxRow 10
SET !LOOP 1
SET !DATASOURCE credentials.csv
SET curRow EVAL(({{!LOOP}}%{{maxRow}}==0)?{{maxRow}}:{{!LOOP}}%{{maxRow}};)
SET !DATASOURCE_LINE {{curRow}}
SET email {{!COL1}}
SET pass {{!COL2}}
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
TAB T=1
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT={{email}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT={{pass}}
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php
我在一个网站上有超过 10 个帐户,在该网站上我想使用帐户 1 登录,执行一些操作,注销然后登录帐户 2 等等。 在我登录最后一个帐户后,我希望我的宏从帐户 1 重新开始,所以我的数据源中的第 1 行。
我现在正在做的是:
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
VERSION BUILD=8970419 RECORDER=FX
TAB T=1
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT=email1
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT=pass1
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT=email2
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT=pass2
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php
以此类推,所以脚本很长,但是可以一直循环
我想要的是从我的数据源加载登录凭据并根据需要重播它们,添加或删除帐户会容易得多。或者更改所有帐户在网站上的操作。
我希望这是可能的!
此致
你的希望很现实。假设您的数据源文件 ('credentials.csv') 如下所示:
email1,pass1
email2,pass2
email3,pass3
...
您可以通过下面的宏在帐户上循环 "infinitely"。只需以非常大的 'Max:' 值(例如 99999)循环模式播放即可。
' rows in the datasource '
SET maxRow 10
SET !LOOP 1
SET !DATASOURCE credentials.csv
SET curRow EVAL(({{!LOOP}}%{{maxRow}}==0)?{{maxRow}}:{{!LOOP}}%{{maxRow}};)
SET !DATASOURCE_LINE {{curRow}}
SET email {{!COL1}}
SET pass {{!COL2}}
SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 1
TAB T=1
URL GOTO=http://www.exampe.com/
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:form ATTR=NAME:email CONTENT={{email}}
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=ID:form ATTR=NAME:password CONTENT={{pass}}
TAG POS=1 TYPE=SPAN ATTR=TXT:LOGIN
URL GOTO=http://www.example.com/action1.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=ID:fjkd ATTR=ID:1
TAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:fjkd ATTR=*
WAIT SECONDS=1
URL GOTO=http://www.example.com/action2.php
WAIT SECONDS=2
TAG POS=1 TYPE=INPUT:RADIO FORM=NAME:f ATTR=ID:2
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:f ATTR=*
URL GOTO=http://www.example.com/logout.php