SUUMO(スーモ)の詳細ページから各物件情報をスクレイピングする

Thursday, April 25, 2019 12:39 PM

前回はSUUMO(スーモ)から物件情報をスクレイピングするというテーマでSUUMOのリストページからデータをスプレイピングしてみました。今度はレベルアップして、リストページから詳細ページに入って各物件情報をスプレイピングしましょう。

今回のチュートリアルはWebスクレイピングツールOctoparse 7.Xを使って、SUUMO(スーモ)の詳細ページから各物件情報の取得を簡単に紹介します。

この度、JR山手線(東京都)から中古住宅・一戸建ての購入情報を探します。

 

次のURLを例として使います。
https://suumo.jp/jj/bukken/ichiran/JJ010FJ001/?ar=030&bs=021&ra=030013&jspIdFlg=patternEnsen&ohf=0&rn=0005&kb=1&kt=9999999&tb=0

&tt=9999999&hb=0&ht=9999999&ekTjCd=&ekTjNm=&tj=0&cnb=0&cn=9999999&srch_navi=1

 

以下はチュートリアルの主な手順です。 [タスクファイルをダウンロードする]
1) 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く
2) ページ遷移のループを作る - 複数のページからデータを取得する
3) 「ループアイテム」を作る - 各ページ上のデータを取得する
4) データを抽出する - 抽出したいデータを選択する
5) データカスタマイズ - 物件の評価を再フォーマットする
6) 抽出タスクを始める - タスクの実行を行いデータを取得する

 

 

 

1) 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く
  • 「カスタマイズモード」を選択し、タスクを作ります。 自由度の高い「カスタマイズモード」は、複雑なウェブサイトを対応できます。
    URLを入力して「URLを保存する」をクリックします。
  • 「ワークフロー」をオンにするとタスクの作りはやすくなります。

 
 

 

2) ページ遷移のループを作る - 複数のページからデータを取得する
  • ページの上にある「次へ」ボタンをクリックし、「操作ヒント」パネルから「選択したリンクをループクリップする」を選択します。
  • チェックした結果、 ページ遷移のXpathは間違いました。「単一要素」に正しいXpathを入力します。
    //a[text()="次へ"]
 

 

 
3) 「ループアイテム」を作る - 各ページ上のデータを取得する

 

  • ステップ2では、2ページ目に移動しました。ですから、「Webページを開く」をクリックして1ページ目に戻ります。
  • 「ページネーション」をクリックします。
  • 一番目の物件名のタイトルをクリックすると、Octoparseは残りの類似URLを自動的に識別します。「すべて選択する」をクリックします。
  • 「操作ヒント」にある「各URLをループクリックする」をクリックします。

 
 
 
4)データを抽出する - 抽出したいデータを選択する

 

  • 「ループアイテム」をクリックします。
  • 「ループアイテム」にある1番目のデータを選択し、「要素をクリックする」をクリックして、詳細ページを開きます。
  • 「物件の特徴」画面に必要なデータをクリックし、「操作ヒント」にある「選択した要素のテキストを抽出する」を選択します。
  • 「物件概要」をクリックして「リンクをクリックする」を選択します。
  • 「物件概要」画面に必要なデータをクリックし、「操作ヒント」にある「選択した要素のテキストを抽出する」を選択します。
  • フィールド名を編集します。

 
 
 

 

 

5) データカスタマイズ - 物件の評価を再フォーマットする

目標データがWebページに表示可能なテキストとして表示されていない場合は、まずソースコード(HTML)を抽出し、抽出したソースコードを必要な形式に処理する必要があります。

   · 「ランキング」を選択し、「データフィールドをカスタマイズする」をクリックします。

   · 「抽出データを再フォーマットする」を選択します。

   · 「ステップを追加する」をクリックし、「正規表現でマッチする」を選択します。

   · 「RegExツールを試す」を選択します。

   · 「で始める」ボックスをチェックし、「">」と入力します。

   · 「で終わる」ボックスをチェックし、「</span>」と入力します。

   · 「生成する」と「マッチする」をクリックします。

   · 「適用する」をクリックし、「OK」をクリックします。

   · 「OK」をクリックして保存します。

 

 

 

6) 抽出タスクを始める - タスクの実行を行いデータを取得する

「保存する」をクリックします。
「抽出開始」をクリックします。

 

この記事は役に立ちましたか?もしご不明な点がございましたら、いつでもお問い合わせください!

 

 

btn_sidebar_use.png
btn_sidebar_form.png