すべてのコレクション
応用例
物件
LIFULL HOME'Sから不動産情報をスクレイピングする
LIFULL HOME'Sから不動産情報をスクレイピングする
一週間前以上前にアップデートされました

「そろそろマイホームを!」と思って、夢に見たマイホームでの新生活を暮らしたい方はたくさんいますよね。でも何から始めたらよいのかよくわかりません。住まいは、人生で最大とも言える大きな買い物だからこそ失敗したくないものです。しかし、実際は思うようなマンションが購入できなかったり、購入前のイメージとの違いなどから買ってから後悔したりするケースもあります。

後悔のないよう、物件情報の把握が重要です。まず住みたい地域の物件情報を全部取得して、その中に気になる物件を選びましょう!今回のチュートリアルはWebスクレイピングツールOctoparseを使って、LIFULL HOME'Sから東京都の新築マンション情報を取得します。

次のURLを例として使います。
https://www.homes.co.jp/mansion/shinchiku/tokyo/list/

主な手順は右側のメニューに表示されています。こちらからサンプルタスクをダウンロードできます。


1. 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く

  • ホームページの検索ボックスにURLを入力して、タスクを作成します。

  • 隣にあるスタートボタンをクリックして次に進んでください。


2. 「ページネーション」 - 複数のページからデータを取得する

  • ページ読み込み後、ページの下にある「次へ」ボタンをクリックします。「操作提案」にある「ループクリップ」を選択します。

  • チェックした結果、 ページネーションのXPathは間違いました。「単一要素」に正しいXPathを入力します。
    //li[@class="nextPage"]/a

そうすると、2番目のページに入っています。

ヒント!

XPathの詳細については、以下の記事をご参考ください:


3. 「ループアイテム」 - 一覧ページからデータを取得する

  • 「Webページを開く」、「ページネーション」をクリックして1番目に戻ります。

  • 一番目の物件名をクリックすると、Octoparseは同じページにあるほかの物件名を自動的に識別します。

  • 「操作提案」にある「類似要素をすべて選択」をクリックします。

  • 「テキスト」をクリックします。

そうすると、ループアイテムが自動作成されます。

チェックした結果、一ページに30件の物件があるはずですが、わずか22件です。ですから「ループアイテム」のXpathを変更しなければなりません。「変数リスト」に正しいXpathを入力します。

//DIV[contains(@class, 'mod-mergeBuilding--sale')]


4. 「データを抽出」 - 抽出したいデータを選択する

  • 必要なデータをクリックし、「操作提案」にある「テキスト」を選択します。

  • 必要に応じて、フィールド名を編集します。

ヒント!

複数行のデータを一緒に選択するのは「操作提案」にある「選択範囲を拡大」ボタンをクリックしてください。


5. 「要素のXpathを設定」 - 正しいデータを取得する

タスクをテストした後、8と9ページデータの構造が違い、あるデータがなくなることをわかりました。ですから、フィールドのXpathを直す必要があります。

  • 直すデータフィールドの「ほかのオプション」アイコンを選択し、「要素のXpathを設定」をクリックします。

  • 「相対Xpath」に カスタマイズのXpathを入力します。

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

今回直すのは、以下のデータです。

「タイトル」 正しいXpath: //span[@class='bukkenName']

「交通所在地」 正しいXpath: //th[text()='交通']/following-sibling::td[1]

「構造階数」 正しいXpath: //th[contains(text(),'構造')]/following-sibling::td[1]

「販売戸数_総戸数」 正しいXpath: //th[contains(text(),'戸数')]/following-sibling::td[1]

「完成日」 正しいXpath: //td[contains(text(),'年')]

「画像URL」 正しいXpath: //P[@class='photo']/img

ヒント!

交通所在地、構造階数などの情報を抽出するなら、近くの2箇所のデータを関連付ける方法でも抽出できます。


6. 「タスク実行」 - データ取得のタスクを実行する

  • 右上の保存をクリックし、実行をクリックします。

  • ローカル抽出を選択してパソコン上でタスクを実行するか、クラウド抽出を選択してクラウド上でタスクを実行します(プレミアムユーザーのみ)。

以下は、サンプルデータです。

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