🗂

無料でAmazonの商品情報、画像、ASINコードをスクレイピングする

2022/03/16に公開

はてなブログ アイキャッチ画像 はてブ Blog.jpg
ネットショップやオンラインビジネスを始めるときは、Amazon、eBayなどで販売されている同類の製品について市場調査を行いますよね。これはすごく面倒な作業です。もしWebスクレイピングスキルを身につけるなら、マーケティングリサーチを大幅に促進できます。今回は使いやすいWebスクレイピングツールOctoparse を使って、無料でAmazonの商品情報を抽出する方法を説明します。

1.Amazon商品情報を抽出する

このチュートリアルで下記のURLを例として使います。

https://www.amazon.co.jp/s/ref=nb_sb_ss_i_1_4?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&url=search-alias%3Daps&field-keywords=headphone&sprefix=head%2Caps%2C243&crid=LIBH2TS7M8P4

この度、AmazonからBluetoothイヤホンの製品情報をスクレイピングします。

以下はチュートリアルの主な手順です。 [タスクファイルをダウンロードする]

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

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

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

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

5) データカスタマイズ – 通常サイズの画像を取得する

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

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

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

01抽出開始.jpg

2) ページ遷移のループを作る - 複数のページからデータを取得する
🔹ページの下にある「次のページ」ボタンをクリックし、「操作ヒント」パネルから「選択したリンクをループクリップする」を選択します。

02単一のループアイテム.jpg

3) 「ループアイテム」を作る - 各ページ上のデータを取得する
🔹「Webページを開く」をクリックすると、最初のWebページを開きます。
🔹「ページネーション」ループを選択します。

これで、ループアイテムを作って、すべてのページにある関する情報を抽出できます。

🔹1番目から4番目までのリスト製品のタイトルを順番にクリックすると、Octoparseはページ内の同じのURLを自動的に識別します。
🔹「操作ヒント」にある「すべて選択」をクリックします。
🔹「各要素をループクリックする」をクリックします。
Amazonスクレイピング03.jpg

4) データを抽出する - 抽出したいデータを選択する
🔹必要なデータをクリックし、「操作ヒント」にある「選択した要素のテキストを抽出する」を選択します。
🔹画像をクリックします。
🔹「操作ヒント」から拡張アイコンをクリックして「IMG」のタグを選択する必要があります。
IMGを選択すると、選択されたタグは「IMG」になります。Octoparseは自動的に選択されたアイテムのタグを識別するので、通常は変更する必要はありません。しかしこの場合は、「操作ヒント」の一番下にあるタグを修正する必要があります。

「操作ヒント」の「選択した画像のURLを抽出する」を選択します。

🔹フィールド名を編集します。

スクリーンショット 2022-03-15 午後0.04.04.png

5) 画像を抽出する -画像ULRを抽出する
画像のURLを抽出する必要な場合は、RegExpツールを使用してHTMLからすべての画像のURLを取得することができます。

🔹画像全体の部分を選択します。
🔹「操作ヒント」の「選択した要素の外部HTMLを抽出する」を選択します。
🔹フィールドを選択し、「データフィールドをカスタマイズする」をクリックします。
🔹「抽出データを再フォーマットする」を選択します。
🔹「ステップを追加する」をクリックし、「正規表現でマッチする」を選択します。
🔹「RegExツールを試す」を選択します。
🔹「で始める」ボックスをチェックし、「src="」と入力します。「で終わる」ボックスをチェックし、「">」と入力します。
🔹「生成する」と「マッチする」をクリックします。「適用する」をクリックし、「OK」をクリックします。
🔹「OK」をクリックして保存します。
Amazonスクレイピング.jpg

6) データカスタマイズ – 通常サイズの画像を取得する

先ほど抽出した画像のURLは、原画像を縮小加工された画像のURLです。したがって、通常サイズの画像を取得したい場合は、RegExツールを使用してそのURLを再フォーマットする必要があります。(デモ動画を参考してください)

🔹「データフィールドをカスタマイズする」をクリックします。
🔹「抽出データを再フォーマットする」を選択します。
🔹 「ステップを追加する」をクリックし、「置換える」を選択します。
🔹「.」と「.」の間にある内容を「置換部分」のボックスに入れます。
🔹「計算する」と「OK」をクリックして保存します。

7)抽出タスクを始める - タスクの実行を行いデータを取得する
🔹「保存する」をクリックします。
🔹「抽出開始」をクリックします。
8)動画チュートリアルでAmazon商品情報のスクレイピング方法をまとめ
Amazon商品情報を抽出する.jpeg

✨2.ASINコードでAmazonの商品情報をスクレイピングする

ASINコードは、Amazonグループの独自のコードで書籍以外の商品を識別する10桁の固有番号です。同じ商品は、どの国のamazonでも、同じASINコードで管理されています。ですから、ASINを知ってると、商品リサーチをする際に無駄な時間を奪われることが減るかもしれません。

始める前に、事前にASINのリストを用意しておく必要があります。

B083S6Q8VK

B07YFW5DG6

B07P11XBWH

B083MNJ2VX

B07XF6LJZ2

B095BQYZLM

B08YD41WKB

B09QMC6K3X

B07D3NPDL1

チュートリアルで下記のURLを使用します。↓

https://www.amazon.com/

以下はチュートリアルの主な手順です。

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

2)「ループアイテム」 - ASINのリストを入力し検索する

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

4)「XPathを変更する」 - データ抽出の精度を向上させる(オプション)

5)「抽出開始」 - データ取得のタスクを実行する

** 1) 「Webページを開く」- 内蔵ブラウザで対象のWebページを開く**
🔹カスタマイズモードの「+ タスク」をクリックします。
🔹URLを「Webサイト」ボックスに貼り付け、「URLを保存する」をクリックして移動します。

16URLを入力.jpg

2) 「ループアイテム」 - ASINのリストを入力し検索する
このステップでは、OctoparseがASINコードを1つずつ検索ボックスに自動的に入力するように設定します。

🔹「ループアイテム」アクションをワークフローデザイナにドロップします。
🔹「ループモード」の「テキストリスト」を選択します。
🔹「A」バーをクリックし、ASINリストをテキストボックスに貼り付けます。
🔹「OK」をクリックして保存します。
17データを抽出.jpg
18データを抽出.jpg

今、ASINリストがループアイテムボックスに表示されています。それでは検索操作のループを作り始めましょう。

🔹Amazon検索ボックスをクリックし、「操作ヒント」の「テクストを入力する」をクリックします。
🔹一番目のASINをテキストボックスに入力し、「OK」をクリックして保存します。
Octoparseの正しい実行順序を生成するために、ワークフローの「テクストを入力する」アクションの位置を調整する必要があります。

🔹「テクストを入力する」アクションを「ループアイテム」の中にドラッグします。
🔹「ループテキスト」のところにチェックを入れ、「OK」をクリックして保存します。

19ループアイテム.jpg

ASINを入力したあと、検索する必要があります。

🔹ページの検索ボタンをクリックし、「操作ヒント」の「ボタンをクリックする」をクリックします。
AmazonはAJAXで検索結果を読み込むので、「AJAX読み込み」を設定する必要があります。

🔹「再試行」のチェックを外します。
🔹「AJAX読み込み」にチェックを入れ、タイムアウト時間を設定します。
🔹「保存する」をクリックして保存します。
Ajax.jpeg

ヒント!AJAXの詳細について以下チュートリアルをご参考ください。
https://www.octoparse.jp/tutorial/ajax
** 3) 「データを抽出する」 - 抽出したいデータを選択する**
🔹抽出したい情報をクリックし、「操作ヒント」の「選択した要素のテキストを抽出する」を選択します。
🔹必要に応じて、フィールド名を変更します。

24テキストを抽出する.jpg

4) 「抽出開始」 - データ取得のタスクを実行する
🔹左上の「保存する」、をクリックします。「抽出開始」をクリックします。
🔹「ローカル抽出」または「クラウド抽出」(有料版のみ)を選択します。
5)【動画チュートリアル】ASINコードから商品情報のスクレイピング方法をまとめ
Amazon ASINコードからデータを抽出する.jpeg

✨3.Amazonから商品のレビューをスクレイピングする

このチュートリアルでは、Amazonから商品レビューをスクレイピングする方法を示します。

このチュートリアルで次のURLを使います。

https://www.amazon.co.jp/Nintendo-Switch-ニンテンドースイッチ-Joy-バッテリー持続時間が長くなったモデル/dp/B07WS7BZYF/ref=sr_1_2?__mk_ja_JP=カタカナ&crid=2LUD41W2K1V49&keywords=switch&qid=1578033207&sprefix=s%2Caps%2C355&sr=8-2

今回商品の詳細ページからカスタマーの名前、星評価、レビューのタイトル、時間、レビューの内容などを収集します。

以下はチュートリアルの主な手順です。

1) 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く
2)レビューページに移動する
3) ページ遷移のループを作る - 複数のページからデータを取得する
4) 「ループアイテム」を作る - 各ページ上のデータを取得する
5) データを抽出する - 抽出したいデータを選択する
6) 抽出タスクを始める - タスクの実行を行いデータを取得する

1) 「Webページを開く」 - 内蔵ブラウザで対象のWebページを開く
🔹「カスタマイズモード」を選択し、タスクを作ります。
🔹URLを入力して「URLを保存する」をクリックします。

26URLをクリックする.jpg

2) レビューページに移動する
ページの下にスクロールし、「すべてのカスタマーレビューを見る(221)」ボタンをクリックし、「操作ヒント」から「リンクをクリックする」を選択します。

そうすると、レビューページに移動します。

27データを抽出.jpg

3) ページ遷移のループを作る - 複数のページからデータを取得する
ページを下にスクロールし、「次へ」ボタンをクリックし、「操作ヒント」から「選択したリンクをループクリックする]を選択します。
28単一のリンクをクリック.jpg

4) 「ループアイテム」を作る - 各ページ上のデータを取得する
🔹一番目のカスタマーの名前をクリックすると、Octoparseはページ内の同じのを自動的に識別します。
🔹「操作ヒント」にある「すべて選択」をクリックします。
🔹「選択した要素のテキストを抽出する」をクリックします。

Amazonスクレイピング(2).jpg

5) データを抽出する - 抽出したいデータを選択する
🔹必要なデータをクリックし、「操作ヒント」にある「選択した要素のテキストを抽出する」を選択します。
🔹必要に応じて、ファイル名を編集します。

6) 抽出タスクを始める - タスクの実行を行いデータを取得する
「保存する」をクリックし、「抽出開始」をクリックします。

7)動画チュートリアルでAmazon商品レビューのスクレイピング方法をまとめ!
Amazonレビューを抽出する.jpeg

Discussion