注意:このページでは、旧バージョンのチュートリアルを紹介しています。最新のチュートリアルを表示するには、helpcenterに移動してください。
レッスン6:ページ遷移の扱い - 複数のページからデータを抽出する
2019年08月23日これで、リストの内容を抽出する と 各アイテムページからデータを抽出する
方法を学んだので、複数のページからデータを取得する準備が整いました。このレッスンでは、「次へ(Next)」ボタンをクリックしてページ遷移の扱いを追加し、使用可能なすべてのページから抽出する方法を紹介します。
ご参考頂けるために、文字の他に、ビデオも作っております。こちらへクリックしてください。
例を挙げてその取得する手順を見てみましょう。
例のURL:https://www.yelp.com/search?find_desc=Takeout&find_loc=new+york%2C+NY%2C+United+States&ns=1
1) ページ遷移の扱い - リストの内容を抽出する[タスクファイルのダウンロードする ]
リストの内容を抽出する場合、リスト内の各アイテムをループするには、ワークフローに「Webページを開く」ステップと「ループアイテム」ステップが必要あります。
「Next」ボタンをクリックし、[次のページをループクリップする]を選択してページ遷移のループを作成します。
ヒント! ページ遷移ループを作成する前、ワークフローで「ループアイテム」を選択してください。そうすると、「ループアイテム」は「ページネーション」ループの内に放置されます。 |
ページ遷移ループが作成されたら、正しいワークフローは以下のようになります。
2) ページ遷移の扱い - 各アイテムページからデータを抽出する
各アイテムページからデータを抽出するタスクを作成したら、ワークフローには、「Webページを開く」ステップと「ループアイテム」ステップがあります。そうすると、各アイテムがループクリックされ、アイテムページのデータを抽出できます。
リストページで「Next」ボタンをクリックします。選択した背景が水色になります。
(リストページではない場合は、ワークフローの「Webページを開く」をクリックしてください。)
ページ遷移ループを作成するには:
· 「Next」をクリックします。
· 「操作ヒント」パネルで「単一要素をループクリップする」をクリックします。 ワークフローで「次のページをクリックする」ステップが自動的に生成されます。
· 「ループアイテム」を移動して、「ページネーション」ループの内側にある「ページネーション」の上に置きます。
ヒント! 1. Octoparseはどのような順番で各ステップを実行しますか?Octoparseは各ステップを上から下に実行します。そ して、複数の「ループアイテム」の場合、「ループアイテム」を裏から外に実行します。 例えば、このレッスンのタスクは、次の順番で実行されます。 1) 「Webページを開く」 ーー ウェブページを開く 2) 「アイテムをクリックする」 ーー 1番目のアイテムをクリックする 3) 「データを抽出する」 ーー 1番目のアイテムページのデータを抽出する 4) 「ループアイテム」 ーー 1番目のリストページの 「アイテムをクリックする」と「データを抽出する」をループする 5) 「次のページをクリックする」 ーー 「Next」ボタンを1回クリックする 6) 「ページネーション」 ーー 「次のページをクリックする」をループする |
「次のページをクリックする」に2-4秒のAJAXタイムアウトを設定する
· 「次のページをクリックする」ステップを選択する
· 「AJAXでページを読み込む」を選択する
· 「AJAXタイムアウト」に2-4秒を選択する
· 「OK」をクリックして変更を保存する
(このアイテムにAJAX技術がない場合、AJAXタイムアウトを設定しないでください。)
ヒント! いつAJAXタイムアウトを設定する必要がありますか? あるWebサイトでは、AJAX技術を使うことがあります。特に、クリックする必要のある要素(「クリックしてメールを表示」、「次へ」など)には、AJAXタイムアウトを設定する必要があります。このレッソンでは、AJAXタイムアウトの設定は、「次のページをクリックする」や「アイテムをクリックする 」などのステップにとって非常に必要です。実際にAJAXがあるかどうかを確認するのはかなり簡単です。クリックするだけでリロードせずにWebページを更新する場合は、AJAX技術を使わなければなりません。(通常、Webページの更新は、 |