7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Python SeleniumでAmazonをスクレイピングし商品名と価格データを収集するツール作成①

Posted at

#目次
はじめに
Seleniumのインストール
Tkinterのインストール
Chromedriverのダウンロード
Chromedriverを動かしてみる
おわりに

#はじめに
Amazonでキーワード検索したデータをCSVに落とし込むツールを作成したいと思います。
今回はその前準備を行う手順を記載していきます。

環境
・マシン : Windows10
・Chrome version : 73.0.3683.75
・Chromedriver versin : 73.0.3683.68
・Python : python3.7

#Seleniumのインストール
今回のスクレイピングはseleniumでのheadlessブラウザで行っているので簡単なインストール手順を書きます。pipでの紹介となります。

pip install Selenium

……これだけです(笑)

#Tkinterのインストール
同様にTkinterのインストールも行います。

pip install Tkinter

今回の画面周りはTkinterで作成しています。

#Chromedriverのダウンロード
今回の記事では一番大変な作業になります。
こちらは筆者も苦戦したのでハマったところを主に記載したいと思います。

PythonのライブラリーでChromedriverを使用できるものがありますが環境によっては動作しないものもありますので今回はダウンロードする手順を用います。

まずは使用しているChromeのバージョンをチェックします。
Chromeのウィンドウ右上にあるメニューボタンをクリックし、表示されるメニューから[Google Chrome について]をクリックする

チェックしてから下記のサイトでChromeのバージョンと対応しているChromedriverをダウンロードします。
https://sites.google.com/a/chromium.org/chromedriver/downloads

ダウンロードしたらCドライブ直下にoptフォルダを作成し、さらにwin32フォルダをその中に作成します。
次にそのwin32フォルダ内にダウンロードしたchromedriver.exeを入れます。
階層としてこんな感じです
C:\opt\win32\chromedriver.exe

これでChromedriverのダウンロード作業はおわりです。

#Chromedriverを動かしてみる
では、実際にダウンロードしたChromedriverを動かしてみます。

test.py
from selenium import webdriver

#driverオブジェクト生成
driver = webdriver.Chrome(executable_path = 'C://opt//win32//chromedriver.exe')

これだけでうまくいけばブラウザが起動しますが、すぐに消えてしまうのでこうします。

test.py
from selenium import webdriver
import time

#driverオブジェクト生成
driver = webdriver.Chrome(executable_path = 'C://opt//win32//chromedriver.exe')
time.sllep(5)

ブラウザを生成してから5秒間とめてやることでより可視化しやすくなると思います。

次は実際にAmazonのページへ飛んでみましょう

test.py
from selenium import webdriver
import time

#driverオブジェクト生成
driver = webdriver.Chrome(executable_path = 'C://opt//win32//chromedriver.exe')

#amzonのURL
amazon_url = 'https://www.amazon.co.jp/'

#ページを取得
driver.get(amazon_url)

#5秒間ストップ
time.sleep(5)

これでAmazonのページが表示されれば成功です。

#おわりに
今回の記事は以上になります。
次回はTkinterによる画面の作成を記載していきたいと考えています。

筆者はデザインの才能が皆無かつTkinter自体の経験も浅いので正直かなり素朴なモノとなっております(笑)

さいごに参考にしたページです
Python + Selenium で Chrome の自動操作を一通り
ChromeDriver を介した e2e テストで、Chrome が起動せず失敗する
【Python】 実践 Selenium 【前編】

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?