从CSV文件中读取关键字用于嵌套for循环格式的iMacros编程

问题描述:

我正在使用CSV文件作为关键字输入给我的iMacros程序。我能够只读取列并生成我需要的搜索输出。我希望程序读取甚至行。输入必须像循环套件一样读取,每行和每列必须以 (1,2),(1,3),(1,4)......... (1,n) (2,3),(2,4)................(2,n)等等。 是否有可能以这种方式用imacros读取输入文件,或者是否有任何其他替代方案。从CSV文件中读取关键字用于嵌套for循环格式的iMacros编程

这里是我的程序,它使用关键字来抓取信息并将解析的信息保存在另一个文件中。但是,我想同时使用行和列,并一次输入多个关键字。

'VERSION BUILD=9030808 RECORDER=FX 
TAB T=1 
set !extract_test_popup no 
set !replayspeed fast 
set !timeout_page 200 
SET !ERRORIGNORE YES 
SET !TIMEOUT_STEP 2 
SET !Datasource keyword.CSV 
Set !Loop 1 
Set !Datasource_Line {{!Loop}} 

URL GOTO=https://twitter.com/search-advanced 

wait seconds=1 
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:NoFormName ATTR=NAME:ands CONTENT= 
{{!COl1}} 
TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Search 
wait seconds=1 

ADD !EXTRACT {{!URLCURRENT}} 
Set url {{!Extract}} 
Set !Extract Null 



'Keyword Scrape 
Tag pos=1 type=h1 attr=class:SearchNavigation-titleText* Extract=Txt 
Set key {{!Extract}} 
Set !Extract Null 


'Main Heading Scrapping 
Tag pos=1 type=a attr=class:AdaptiveNewsLargeImageHeadline-title* 
Extract=Txt 
Set mainheading {{!Extract}} 
Set !Extract Null 

'Main heading URL 
Tag pos=1 type=a attr=class:AdaptiveNewsLargeImageHeadline-title* 
Extract=href 
Set mainheadingurl {{!Extract}} 
Set !Extract Null 


'Date of Post 
Tag pos=1 type=a attr=class:AdaptiveNewsHeadlineDetails-date<sp>js-nav* 
Extract=txt 
Set date {{!Extract}} 
Set !Extract Null 


'Username whose post this article 
    TAG XPATH=//*[@id="page- 
container"]/div[2]/div/div/div[2]/div/div[2]/div/div[2]/div[2]/div[1]/a/span 
Extract=Txt 
Set username {{!Extract}} 
Set !Extract Null 

'extract user name 
TAG POS=1 TYPE=A ATTR=TXT:@* EXTRACT=TXT 
Set username1 {{!Extract}} 
Set !Extract Null 


Add !Extract {{mainheading}} 
Add !Extract {{date}} 
Add !Extract {{mainheadingurl}} 
ADD !EXTRACT {{url}} 
Add !Extract {{username}} 
Add !Extract {{key}} 
Add !Extract {{username1}} 


SAVEAS TYPE=EXTRACT FOLDER=* FILE=test1_output.csv 
clear' 
+0

问:你为什么包含“python”标签? – paulsm4

我修改one of my codes这里:

' max column number in the CSV ' 
SET maxCol 3 
' fake delimiter ' 
SET !DATASOURCE_DELIMITER "!" 
' real delimiter ' 
SET rd "," 
SET !DATASOURCE Address.csv 

SET curRow EVAL("Math.floor(({{!LOOP}} - 1)/{{maxCol}}) + 1;") 
SET curCol EVAL("({{!LOOP}} % {{maxCol}} == 0) ? {{maxCol}} : {{!LOOP}} % {{maxCol}};") 

SET !DATASOURCE_LINE {{curRow}} 
SET kw EVAL("'{{!COL1}}'.split('{{rd}}')[{{curCol}} - 1];") 

PROMPT {{curRow}}_{{curCol}}_{{kw}} 

尝试如何宏的工作方式,把它调整到你。