無限スクロールでの読み込み
フォローする
1. 無限スクロール
無限スクロールは、JavaScriptまたはAJAXをWebサイトでよく使われる技術です。同一ページ内でスクロールダウンするたびに次々とコンテンツを読むことができ、FacebookのフィードやTwitterのタイムラインなどで採用されています。
1) 自動識別機能を利用する場合
1.1) Octoparseを起動します。スクレイピングしたいWebページのURLを入力します。「抽出開始」 ボタンをクリックして進みます。
1.2) Octoparseでページが読み込みされたら、自動的にページ上の内容を識別します。もし自動識別機能をオフする場合は、右上の操作ヒントパネルで 「Webページを自動識別する」、ページ上の内容を識別します。自動識別とは、自動的にページ上の必要なデータを検出して識別するという役立つ機能です。ポイント&クリックをする必要はなく、Octoparseは自動的に処理します。
1.3) 識別が完了すると、「編集」ボタンをクリックします。
1.4) スクロールタイプ、回数、実行間隔などをご要望に応じて設定することができます。 デフォルトでは、「新しい内容がない場合、スクロールを終了」のチェックが入っています。これは、スクロールダウンをループする時に、Web内容に変化があるかを検知し、無効なループを自動的に終了させます。
1.5) 「ワークフローを生成」をクリックして確認し、タスクを作成します。
1.6) 「実行」をクリックして、抽出結果を確認します。
2) 手動で設定する場合





ヒント! 無限スクロールの設定は簡単ですが、タスクの実行をテストして、スクロール時間が十分か、スクロールが正常に動作ているかどうかを確認することが大切です。 |
2. 「load more」ボタンをクリックする
無限スクロール以外、一部のWebページでは、AJAXを介してより多くのコンテンツを継続的にロードするため、「Load More」ボタンをクリックする必要があります。
ページから利用可能なコンテンツをスクレイピングするために、すべての情報が読み込まれるまで「Load more」ボタンを繰り返しクリックするようにOctoparseを設定します。
https://health.usnews.com/best-hospitals/search?health.usnews.comを例として説明します。
3) 操作パネルから「単一要素をループクリップする」を選択します。これはOctoparseにボタンを繰り返しクリックするよう指示します。
- ワークフローから「次のページをクリック」をクリックします。
- 「詳細設定」から「AJAX読み込み」を選択し、タイムアウトを設定します(通常、1秒または2秒)。
ヒント! 「Load More」ボタンを7回クリックしたい場合は、ワークフローから「ページネーション」ループを選択し、「ループ終了の設定」で実行回数を7に設定します。 |
5) これからループするリストを作ります(リストからデータを抽出)。
6) 「ローカル抽出」を使ってタスク実行をテストします。Webサイトの構造は異なるので、すべてのステップが正しく実行されているかどうかを確認することが重要です。
ヒント! 1. 抽出ループがページネーションループの内部にある場合は、手動で外に引きずります。
2. 間違って操作が行われた場合は、「操作をキャンセルする」を使ってアクションを取り消します。
|