メインコンテンツにスキップ

DuckDuckGoの検索結果からデータをスクレイピング

11か月以上前に更新

こちらは最新バージョンのOctoparse向けのチュートリアルガイドです。お使いのOctoparseが古いバージョンの場合は、最新バージョンへのアップグレードを強くおすすめします。最新バージョンは高速で、より使いやすく、強力になりました。まだアップグレードしていない場合は、こちらからダウンロードとアップグレードを行ってください

DuckDuckGoは、ユーザーの検索キーワードに基づいて即時に答えを提供する検索エンジンです。プライバシー保護の理念が支持され、数億人のユーザーを獲得しており、現在も増加し続けています。このケースでは、Octoparseを使用して、DuckDuckGoの検索結果を一括で取得する方法をご紹介します。

target.jpg

チュートリアルに従って進める際には、以下のURLを参考にご利用ください:

主な手順は右側のメニューに表示されており、こちらからデモタスクファイルをダウンロードできます。


1. 「Webページを開く」を作成 - 目標ページを開くため

スクレイピングを開始するには、まずターゲットURLを入力します。

  • ホーム画面の中央にある検索ボックスに「Covid」の検索URLを入力します。

  • スタート」をクリックし、新しいタスクを作ります。


2. ウェブページのデータを自動検出 - ワークフローを生成

Octoparseの内蔵自動検出機能を使用すると、ワークフローが素早く自動生成されます。その後、必要に応じてさらに修正を加えることができます。

  • ウェブページのデータを自動検出」をクリックし、終了まで待ちます。

  • ワークフローを生成」をクリックします。

  • 要らないフィールドを削除します。

  • フィールドヘッダーをダブルクリックして、名前を変更します。


3. ループアイテムのXPathを修正 - 「もっと見る」ボタンを正確に特定

結果を正しく読み込むためには、ページネーションのXPathを修正することが重要です。

  • ループアイテム」を選択します。

  • 基本設定の「要素のXPath」ボックスに、以下のXPathを入力してください://button[@id="more-results"]

  • 保存」をクリックします。

  • ループアイテム1」を選択します。

  • 基本設定の「要素のXPath」ボックスに、以下のXPathを入力してください: //ol[@class="react-results--main"]/li[@data-layout="organic"]

  • 保存」をクリックします。


4. データフィールドのXPathを修正 - データを正しく取得するため

  • フィールドを「縦向き」に切り替えます。

以下に示す更新されたXPathを、タイトルと概要のデータフィールドに入力します。

タイトル: //a[@data-testid="result-title-a"]

概要://article//div[3]//div[1]//span[last()]


5. ワークフローを修正 - すべての結果が読み込まれた後にデータを抽出するため

重複データのスクレイピングを避けるためには、データ抽出ループをページネーションの外に移動するほうがよいです。

  • ループアイテム1」をドラッグして、ページネーションの下に配置します。


6. タスクを実行 - 目標データを収集

  • 右上の「保存」をクリックしてタスクを保存します。

  • その隣の「実行」をクリックし、実行タスクのウィンドウが表示されるのを待ちます。

  • ローカル収集」セクションの下にある「通常モード」を選択して、ローカルデバイスでタスクを実行します。

  • タスクの実行が終了まで待ちます。

以下はローカルで実行されたサンプルデータです。エクスポートは、Excel、CSV、HTML、およびJSON形式で可能です。

こちらの回答で解決しましたか?