有一个问题与循环iMacros/JS
Have an issue with loop iMacros/JS
我这里有Facebook的iMacros/JS脚本,需要从CSV文件登录到FB帐户,然后脚本有第二个循环j
,这是发送1个账号发出20个好友请求
问题是,当你改变帐户有一个弹出消息,你需要验证电话号码在这种情况下,我需要跳过这个帐户,去另一个。
这段代码意味着如果页面上出现消息,它必须从j
循环中断开:
if(iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"_2e9n"')>0) {
break;}
问题是当脚本跳过这个帐户时,它也会跳过其他CSV文件中的20个朋友url。
所以j
循环必须始终在它停止的地方继续,如果"20"请求发送从位置"21"开始,但是当它跳过帐户时,它也跳过20行CSV文件。
var accounts = 10;
var total = 100;
var timeout = 'SET !TIMEOUT_STEP 0'n';
var speed = 'SET !REPLAYSPEED FAST'n';
var error = 'SET !ERRORIGNORE YES'n';
var x = 0;//if no error
//Login to account from csv file
for(var i = 1; i <= accounts; i++) {
function LogIn() {
iimPlayCode(speed+'SET !DATASOURCE Facebooklogin.csv'nSET !DATASOURCE_LINE '+i+''nTAG POS=1 TYPE=INPUT:EMAIL ATTR=ID:"email" CONTENT={{!COL1}}'nTAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:"pass" CONTENT={{!COL2}}'nTAG POS=1 TYPE=LABEL ATTR=class:"uiButton uiButtonConfirm"'n')
}
//Check if already logged in then relog to account from csv file
if(iimPlayCode(speed+timeout+'TAG POS=1 TYPE=A ATTR=CLASS:"_2s25"')>0) {
iimPlayCode(timeout+'TAG POS=1 TYPE=DIV ATTR=ID:"userNavigationLabel"'nTAG POS=2 TYPE=SPAN ATTR=TXT:Log<SP>Out')
LogIn();
} else { LogIn(); }
if(x==0) {
var j = j*20-19;
} else if (j > 20) {
x = 0;
}
for (j; j <= total; j++) {
//If Security Check
if(iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"_2e9n"')>0) {
x = 1;
var j = j - 19;
break;
} else {
x = 0;
}
//Send Message and Add Friend
iimPlayCode(speed+error+'SET !TIMEOUT_STEP 0'nSET !DATASOURCE FacebookFriends.csv'nSET !DATASOURCE_LINE '+j+''nURL GOTO={{!COL1}}'nSET !EXTRACT {{!URLCURRENT}}'nSAVEAS TYPE=EXTRACT FOLDER=* FILE={{!NOW:yyyy/mm/dd}}.csv'nTAG POS=1 TYPE=A ATTR=HREF:/messages/thread/*'nTAG POS=1 TYPE=TEXTAREA ATTR=CLASS:"br *" CONTENT=""'nTAG POS=1 TYPE=TEXTAREA ATTR=ID:"composerInput" CONTENT=""'nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:composer_form ATTR=NAME:send'nURL GOTO={{!COL1}}'n')
if(j==20*i) { break; }
}
};//End of loop
我想你需要这样的东西:
var accounts = 10;
var total = 100;
var timeout = 'SET !TIMEOUT_STEP 0'n';
var speed = 'SET !REPLAYSPEED FAST'n';
var error = 'SET !ERRORIGNORE YES'n';
var x = 1; // variable instead of 'i' in 'j'-loop
//Login to account from csv file
for(var i = 1; i <= accounts; i++) {
function LogIn() {
iimPlayCode(speed+'SET !DATASOURCE Facebooklogin.csv'nSET !DATASOURCE_LINE '+i+''nTAG POS=1 TYPE=INPUT:EMAIL ATTR=ID:"email" CONTENT={{!COL1}}'nTAG POS=1 TYPE=INPUT:PASSWORD ATTR=ID:"pass" CONTENT={{!COL2}}'nTAG POS=1 TYPE=LABEL ATTR=class:"uiButton uiButtonConfirm"'n')
}
//Check if already logged in then relog to account from csv file
if(iimPlayCode(speed+timeout+'TAG POS=1 TYPE=A ATTR=CLASS:"_2s25"')>0) {
iimPlayCode(timeout+'TAG POS=1 TYPE=DIV ATTR=ID:"userNavigationLabel"'nTAG POS=2 TYPE=SPAN ATTR=TXT:Log<SP>Out')
LogIn();
} else { LogIn(); }
j = 20 * x - 19;
for (j; j <= total; j++) {
//If Security Check
if(iimPlayCode('TAG POS=1 TYPE=DIV ATTR=CLASS:"_2e9n"')>0)
break;
//Send Message and Add Friend
iimPlayCode(speed+error+'SET !TIMEOUT_STEP 0'nSET !DATASOURCE FacebookFriends.csv'nSET !DATASOURCE_LINE '+j+''nURL GOTO={{!COL1}}'nSET !EXTRACT {{!URLCURRENT}}'nSAVEAS TYPE=EXTRACT FOLDER=* FILE={{!NOW:yyyy/mm/dd}}.csv'nTAG POS=1 TYPE=A ATTR=HREF:/messages/thread/*'nTAG POS=1 TYPE=TEXTAREA ATTR=CLASS:"br *" CONTENT=""'nTAG POS=1 TYPE=TEXTAREA ATTR=ID:"composerInput" CONTENT=""'nTAG POS=1 TYPE=INPUT:SUBMIT FORM=ID:composer_form ATTR=NAME:send'nURL GOTO={{!COL1}}'n')
if (j == 20 * x) {
x++;
break;
}
}
};//End of loop
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 如何从Java/scala调用js美化程序
- 如何更改<svg>标记为<img>用js标记
- 关于FF的IMACROS.JS-如何删除宏末尾源csv文件的第一行
- 在终端中使用imacros运行JS
- 如何从 DOS 批处理脚本或计划运行 imacros .js
- 循环为imacros / JS不工作的意见/建议是受欢迎的
- 有一个问题与循环iMacros/JS