価格.comから売れ筋ランキングをスクレイピングする

Monday, July 02, 2018 4:13 PM

価格.comはパソコンや家電から、ファッション、食品に至るまで、あらゆる製品・サービスを、販売価格や口コミ情報、ランキングなどの視点から比較・検討できる、お買い物支援サイトです。買い物をする前にそのサイトで自分の買いたいものをチェックできます。

今回、WebスクレイピングツールOctoparse 7.Xを使って、価格.comからノートパソコンの人気売れ筋ランキングをスクレイピングします。

次のURLを例として使います。
http://kakaku.com/pc/note-pc/ranking_0020/

 

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

 

 

 

1) 「Go To Web Page」 - 内蔵ブラウザで対象のWebページを開く
  • 「Advanced Mode」を選択し、タスクを作ります。 自由度の高い「Advanced mode」は、複雑なウェブサイトを対応できます。
  • URLを入力して「Save URL」をクリックします。
  • 「Workflow」をオンにするとタスクの作りはやすくなります。

2) ページ遷移のループを作る - 複数のページからデータを取得する

ページの下にある「次へ」ボタンをクリックし、「Action Tips」パネルから「Loop click the selected link」を選択します。
3) 「Loop Item」を作る - 各ページ上のデータを取得する
  • ステップ2では、2ページ目に移動しました。ですから、「Go To Web Page」をクリックして1ページ目に戻ります。
  • 「pagination」をクリックします。
  • 一番目の商品のタイトルをクリックすると、残りのタイトルが識別されます。
  • 「Action Tips」にある「Select all」をクリックして、「Extract link text」をクリックします。
  • 「loop item」には余計なデータが3行あります。ですから、「variable list」に正しいxpathを入力します。

//DIV[@class='rkgBoxBody clearfix']/parent::div[1]

4)データを抽出する - 抽出したいデータを選択する
  • 一番目の「Loop Item」をクリックして、ワークフローにある「Extract data」をクリックします。
  • 必要なテキストデータをクリックし、「Action Tips」にある「Select all」をクリックし、「Extract data」を選択します。
  • 色の選択は画像なので、色を取得する場合、色の画像をクリックし、「Action Tips」にある「Extract outer HTML of the selected element」を選択します。
  • 必要に応じて、フィールド名を編集します。

5) データカスタマイズ - データを再フォーマットする

1.場合によっては、必要なデータがHTMLに隠れることがあります。たとえば、色を抽出したいですが、それをクリックして抽出できないようです。この場合、まずHTMLを抽出し、再フォーマットする必要があります。

  • データフィールドを選択し、「Customize data field」をクリックします。
  • 「Refine extracted data」、「Add step」、「Match with Regular Expression」を順番に選択します。
  • 「Regular Expression」に  (?<=title=")(.+?)(?=系")  を入力します。
  • 「Evaluate」をクリックすると、「Output」フィールドに結果が表示されます。
  • 「OK」をクリックします。


 

ヒント!

正規表現の初心者にRegExツールをオススメします。

  • 「Try RegEx Tool」を選択します。
  • 「Star with」に「 title=" 」を入力、「End with」に 「系"」を入力,「generate」をクリックしてから「Match」をクリックすると、「Matches」フィールドに結果が表示されます。
  • 「Apply」と「OK」をクリックします。

 

 


2. タスクをテスト実行した結果、「仕様」フィールドのxpathが間違いました。

  •  直すデータを選択し、「Customize data field」をクリックします。
  • 「Customize Xpath」をクリックします。
  • 「Relative Xpath」に カスタマイズのXpathを入力します。

//DIV[@class='rkgRow rowDetail']

  • 「OK」をクリックします。

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

「Save」をクリックします。
「Start Extraction」をクリックします。

 

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

 

btn_sidebar_use.png