1

ログインして検索を実行し、「結果」をテキストファイルに抽出するiMacroがあります。私の課題は、「結果」の最初のページしか取得できないことです。各ページからすべての「結果」を抽出したいと思います。結果が1ページしかない場合もあれば、10ページの結果がある場合もあります。

「結果」ページ1は、次のようにフォーマットされています(各ハイパーリンクの前に2つのスペース):結果ページ1 2 3

「結果」ページ2は、次のようにフォーマットされています。結果ページ1 2 3

「結果」ページ3は、次のようにフォーマットされています。結果ページ1 2 3

検索で返されるページ数がわからない場合、3ページ目がある場合にのみ3ページ目を抽出するにはどうすればよいですか?

マクロの一部は次のとおりです。

TAG POS=1 TYPE=INPUT:IMAGE FORM=NAME:form1 ATTR=ID:SEARCH

'=> Extract data of 2nd table (POS=2) on **page 1 **
TAG POS=1 TYPE=A ATTR=TXT:1
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT

'The SAVEAS statement was added manually to write the extracted table to a file
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}}

'=> Extract data from 2nd table (POS=2) on **page 2**
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}}

'=> Extract data from 2nd table (POS=2) on **page 3**
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}}
4

1 に答える 1

1

ループパラメータを使用してスクリプトを実行するだけで、スクレイプするページ数を指定できます。必要なのは、次のように少し変更することだけです。

TAG POS=1 TYPE=A ATTR=TXT:{{!loop}}
TAG POS=2 TYPE=TABLE ATTR=TXT:*location* EXTRACT=TXT
SAVEAS TYPE=txt FOLDER=* FILE=mytable_{{!NOW:yymmdd_hhnnss}}
于 2012-12-27T21:16:41.913 に答える