2013-01-01 34 views
1

我在Internet Explorer中使用Opus iMacros附加組件。下面的宏從我的Excel CSV文件的第一行獲取一個變量,並在網站上執行搜索。網站的搜索結果可以是10到200條記錄,每頁20個(1-10頁)。宏然後將每個頁面提取到一個文本文件以備將來參考。iOpus iMacro網頁掃描循環

SET !ERRORIGNORE YES 
SET !EXTRACT_TEST_POPUP NO 
TAB T=1 
TAB CLOSEALLOTHERS 
SET !DATASOURCE 7Digits.csv 
SET !DATASOURCE_Columns 1 
SET !DATASOURCE_LINE {{!LOOP}} 
'Login 
URL GOTO=https://SomeWebsite.com/login 
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:form1 ATTR=NAME:USER_NAME CONTENT=ABC123 
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:form1 ATTR=NAME:PASSWORD CONTENT=XXX 

'set search criteria on multiple search page 
TAG POS=1 TYPE=TEXTAREA FORM=NAME:form1 ATTR=NAME: NUMBER CONTENT={{!COL1}} 
TAG POS=1 TYPE=INPUT:IMAGE FORM=NAME:form1 ATTR=ID:SEARCH 
‘Extract results and SAVE 
TAG POS=1 TYPE=A ATTR=TXT:1 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:2 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:3 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:4 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:5 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:6 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:7 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:8 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:9 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
TAG POS=1 TYPE=A ATTR=TXT:10 
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT 
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}} 
'END 

我的挑戰是找出一種辦法取消了「SAVEAS」如果有小於10頁的搜索結果。例如,如果搜索只返回60個結果,則宏只需要執行3次(20 x 3)SAVEAS命令。如何在不保存相同文本文件7次的情況下移動到下一個{{!LOOP}}

我試過了「!FAIL_ON_ALL_NAVIGATEERRORS」命令,但宏完全停止。我想移動到下一個記錄而不是停止宏。

+1

一般的解決方法是刮結果的數量和使用EVAL進行比較,但還是有不中斷或繼續操作在iMacros的,所以你需要轉換代碼,js的JavaScript的格式,並進行比較和從js文件循環操作 – Bestmacros

回答

0

如果公式可以通過imacro javascript來實現。

if(search result<10) { 

perform your script 

}else { go to next page }