【Python】-Selenium- ”WEBブラウザを操作して、スクレイピングするぞ!(初めの1歩)

スポンサーリンク

Seleniumの使い方

Seleniumは、ブラウザの操作を行う機能を持ったライブラリです。主にはWEBアプリケーションのテストを行ったりWEB上の情報を取得するスクレイピングに利用されます。

スクレイピングについては、以前に”Scrapy”というライブラリの記事を書いたことがありますが、最近のWEBサイトやWEBアプリは、Javascriptでブラウザで表示してから処理するものも多くて、”Scrapy”だけでは取得出来ない情報も多かったりします(*_*)

Selenium”はブラウザを操作するライブラリなので、Javascriptで生成されたHTMLもしっかり捕まえてくれますので、上手くいかないな~って時には試してみて下さい(^o^)

環境

  • Windows
  • anaconda
  • python3
  • VS code

スポンサーリンク

準備

ライブラリのインストール

まずはSeleniumを使えるようにインストールしましょう!

condaの人は

conda install -c conda-forge selenium

Anacondaの人は、ANACONDA.NAVIGATORでもいけますよ。

pipの人は

pip install selenium

です。

chromedriverを準備

Seleniumはいろいろなブラウザを操作することが出来ますが、今回は自分がいつも使っているChromeブラウザを操作することを前提としたいと思います。

Seleniumを使うためには、操作対象のブラウザのドライバーを使いますので、それをダウンロードしていましょう!

今回は、Chromeブラウザなので、chromedriverをダウンロードします。

その時に注意して欲しいのは、使っているChromeブラウザのバージョンと一致しているかどうかです。次の図で示したとおりですが、Chromeブラウザの設定>Chromeについて に書かれているバージョンと同じものを選びましょう!

Chromeブラウザの設定>Chromeについて の画像
chromedriverダウンロードページ

ダウンロードするとzipファイルになっているので、解凍してお好みの場所で待機させておいて下さい。

ちなみに、condaやpipでもインストール出来るみたいです。。。

condaの人

conda install python-chromedriver-binary==87.0.4280.20

pipの人

pip install chromedriver-binary==87.0.4280.20

※「87.0.4280.20」の部分はバージョンなので、適宜設定して下さい。

これで準備は完了です!

スポンサーリンク

使い方

モジュールインポート

では早速使って行きましょう!

お決まりのモジュールのインポート

from selenium import webdriver

driverの読み込み

まずは操作対象となるdriverをプログラム上に読み込みます。

driver = webdriver.Chrome("chromedriverを置いたところのPATH")

“chromedriverを置いたところのPATH”の部分には、先程ダウンロードして解凍した”chromedriver.exe”ファイルのPATHを指定します。

僕の場合は、EXCELVBAでもSeleniumを使っていますので、chromedriver.exeは次の場所にあります。

「C:\Users\ユーザー名\AppData\Local\SeleniumBasic\chromedriver.exe」

なので、次のようになりますね。

driver = webdriver.Chrome(r"C:\Users\ユーザー名\AppData\Local\SeleniumBasic\chromedriver.exe")

※引数のところ「r」付いてるんでご注意下さい。

WEBサイト開く

次は、WEBサイトを開きます。

Google先生でも開いてみましょうか。

driver.get('https://www.google.co.jp')

getメソッドで開きます。引数には開きたいサイトのURLを指定します。

ここまでやりましょう。

実行する一連のコードは以下です。

from selenium import webdriver

# chromedriverの読み込み
driver = webdriver.Chrome(r"C:\Users\tomom\AppData\Local\SeleniumBasic\chromedriver.exe")

# Google先生を開く
driver.get('https://www.google.co.jp')

実行動画です。

※10行目に「time.sleep(1)」とあるのは、プログラムが終わってしまうと立ち上げたブラウザが閉じてしまうので止めるために入れてるだけです。

上手くGoogle先生が立ち上がりましたね(^o^)

今回は初めの1歩ということでここまでです!

続きをお楽しみに~☆

その他 Seleniumに関する記事

コメント

タイトルとURLをコピーしました