2015-04-15 59 views
1

这是我目前有:通过CSV文件循环iMacros?

VERSION BUILD=8920312 RECORDER=FX 
TAB T=1 
URL GOTO=https://www.random-domain.com 
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new_message_form ATTR=ID:my_subject CONTENT=Custom<SP>Title 
TAG POS=1 TYPE=TEXTAREA FORM=ID:new_message_form ATTR=ID:my_message CONTENT=Hi,<BR><BR>This<SP>is<SP>a<SP>test<SP>message.<BR><BR>-<SP>Custom<SP>Name 
TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:new_message_form ATTR=ID:reply_button 

我使用的iMacros的Firefox插件。多年前,我曾经在iMacros上做过很多事情,但不记得如何正确地做一些事情。

  1. 我只是有一列的CSV文件,那就是应该通过(行由行)在URL GOTO=场旋转的URL列表。

  2. 如果在尝试访问特定URL或在提交过程中进程超时,应该超时并在10秒后重新启动进程。

  3. 是否使用空格所需的<SP>?该插件会自动添加它,但我不记得添加以iMacros都在几年前工作时...

谁能帮助我在上面的脚本解决这一问题?提前致谢!

回答

1

这实际上包含csv中的3列,但将有助于避免您提到的问题。

与您的.csv,我建议保存它从Excel以外的东西,因为它往往不能很好地与iMacros玩。使用Notepad ++保存的UTF-8编码文件让我非常幸运。

撇号在行的开头表示注释。下面有一些解释。

'This will have it continue if it times out 
SET !ERRORIGNORE YES 
'Your ten second requirement 
SET !TIMEOUT_STEP 10 
'prevents testing popup from showing 
SET !EXTRACT_TEST_POPUP NO 

'Be sure that the csv has been saved as a UTF-8 encoded csv 
SET !DATASOURCE Datasource.csv 
'This dictates what row to start on 
SET !LOOP 1 
'this connects the loop counter to the row of the csv 
SET !DATASOURCE_LINE {{!LOOP}} 


URL GOTO={{!COL1}} 
'I usually put a short wait in before I try adding content, you can adjust this. 
WAIT SECONDS=5 
'By referencing them from a csv, you shouldn't need the <SP> 
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new_message_form ATTR=ID:my_subject CONTENT={{!COL2}} 
TAG POS=1 TYPE=TEXTAREA FORM=ID:new_message_form ATTR=ID:my_message CONTENT={{!COL3}} 
TAG POS=1 TYPE=INPUT:BUTTON FORM=ID:new_message_form ATTR=ID:reply_button 

我通常在结尾处加上一个验证步骤,以及,已经iMacros的产生证实了已更新的电子表格。如果事情超时,很有帮助。

粘性这对宏的结束,如果你想验证

WAIT SECONDS=5 

ADD !EXTRACT {{!COL1}} 
ADD !EXTRACT {{!COL2}} 
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:new_message_form ATTR=ID:my_subject EXTRACT=TXT 
ADD !EXTRACT {{!COL3}} 
TAG POS=1 TYPE=TEXTAREA FORM=ID:new_message_form ATTR=ID:my_message EXTRACT=TXT 

SAVEAS TYPE=EXTRACT FOLDER=* FILE=*.csv