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

都道府県から情報を集める方法(ネストループ)

2週間以上前に更新

地域ごとに情報を閲覧できるポータルサイトがあり、詳細情報にアクセスするには地域の絞り込みが必要となります。例えば、以下のようなサイトです。

mceclip0.png

どうやってすべての情報を一度に集めることができるのか? octoparseでは、ネストループを使用します。


1.まず、北海道をクリックします。

一度クリックすると、似たようなレイアウトのリンクを自動的に検出します(例:同じ場所にある他の6つの都道府県)。

2.次に、関東の茨城県をクリックします。

北海道と茨城県はいずれも表の最初のセルに配置されているため、Octoparse は表内の最初のセルをすべてハイライトし、これらが同じ種類の要素であることを示しています。

3.次に、栃木県をクリックします。

操作提案からわかるように、octoparseは47都道府県のリンクをクリックする必要があることを理解しました。サイトのレイアウトによってクリック数は異なりますが、原理は同じです。つまり、クリックすることで、octoparseは47のリンクの間にある共通点を見つけます。

4.そして、ループクリックを作ることができます。

  • クリックすると、octoparseは自動的にステップを生成します。

mceclip6.png
  • 「アイテムをクリック」を選択するとページが開き、octoparseは自動的に最初のリンク(つまり北海道)をクリックします

mceclip7.png

5.次のページに進んだら、同様の手順で全ての選択肢を選択してください。

各カードのタイトル(またはクリックすると詳細ページにジャンプするボタンや画像)をクリックします。

mceclip10.png

※ページめくりボタンがある場合は、ページめくり処理を追加する必要がある。

プロセスが生成されると、octoparseは自動的にループアイテムの最初のリンクをクリックします(つまり一番目のクリニック)

mceclip12.png

6.抽出したいフィールドをクリックすると選択できます(連続クリック可能)。

選択が完了したら、抽出ステップを作成します。

※テーブルからデータを抽出する方法がわからない場合は、こちらの記事をご覧ください。

要約すると、トップページから詳細ページまで、2回エリアを選択する必要があるため、2層のループを作りました。 最後のループは、一覧ページに使用されます。もし、ターゲットサイトが詳細ページを表示するために3回エリアを選択する必要がある場合、結局4層のループを作る必要があるかもしれません。

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