エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ

      2017/04/29

Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ

 

selenium WebDriverとは?

 
Seleniumは、ブラウザの操作を自動化することで、Webシステムのデバッグをするために開発されたプログラムです。
 
ですが、ブラウザを自動的に操作することができますので、デバッグのためのツールとしてだけではなく、ロボットツールとしても利用されているプログラムです。
 
Seleniumには、selenium Core、selenium RC、selenium IDE、selenium WebDriver...など開発の歴史の中でいくつものバージョンが作られてきましたが、基本的には Firefoxが密接な関係にあったブラウザですので、Seleniumというと Firefox、という感じなのですが、ここでは、Google Chromeを使って自動操作するための環境構築の方法を解説します。
 
 

selenium WebDriverの Firefox版と Chrome版の違い

 
Selenium WebDriverと Pythonを使って、Firefoxを自動操作する環境構築の手順は「Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ」で解説をしましたので、こちらを参照してください。
 
この記事で Firefoxの場合は、Firefoxを操作するために「geckodriver」というドライバーを入れましたが、Chromeの場合は、「ChromeDriver – WebDriver for Chrome」を入れます。
 
もちろん、「geckodriver」と「ChromeDriver」の両方入れても全く問題ありません。
 
 

Pythonや seleniumをインストールする手順

 

 
 
このうち、「ChromeDriverのインストール」と「Pythonスクリプトで seleniumを動作させる」以外は、Firefoxの時と同じですので、「Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ」を参考にインストールをしてください。
 
 


 
 

ChromeDriver – WebDriver for Chromeのインストール

 

chromedriver_win32.zipのダウンロード

 
下記の Googleのサイトから、ChromeDriverをダウンロードします。
 https://sites.google.com/a/chromium.org/chromedriver/downloads
 
上記のサイトの「Latest Release」のバージョンのダウンロード画面に遷移し、インストールする環境に合うものをダウンロードします。
 
私の場合は Windows10でしたので、「chromedriver_win32.zip」をダウンロードしました。
 

chromedriver.exeの設置

 
「chromedriver_win32.zip」をダウンロードし、展開すると「chromedriver.exe」が取り出せますので、これをパスが通ったところに設置します。
 
パスが通っているところであればどこでもいいのですが、「Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ」で解説していますが、「geckodriver.exe」は「C:\Python27\Scripts」に設置していますので、同じ場所に設置すると分かりやすくていいでしょう。
 
 
 

Pythonスクリプトで seleniumを動作させる

 
設定した seleniumが正しく動作するかを確認するため、動作検証のための Pythonスクリプトを実行してみます。
 

Pythonスクリプトを実行

 
動作検証のためのサンプルスクリプトは以下のようになります。
これをフォルダ「test」の中にファイル名「selenium_test.py」として保存します。
 

 
上記のスクリプトを下記のコマンドで実行します。
 

 
このサンプルスクリプトは、Chromeを起動して、指定した URLのページを表示する、というだけのシンプルなものですが、このスクリプトが問題なく動作すれば、あとは、動作させたい処理を Pythonで記述していくだけですね。
 
 

selenium+Pythonで処理の自動化に関する記事

Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ
PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。
Pythonをコマンドラインで実行。全角文字(日本語)を引数にする場合の対処方法
Selenium WebDriverでFirefoxをプライベートウィンドウ/Chromeをシークレットモードで起動する方法・言語はpython
Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ
Beautiful Soupを利用してPythonでスクレイピングを行う環境構築方法の解説
PythonでMySQLへの接続ライブラリMySQL-pythonの簡単インストール方法
PythonでURLの有無、存在をチェックするスクリプト

 - プログラミング・Web関連技術

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

コピーコンテンツ対策.htaccessで直リンク禁止しリダイレクトで対応

不正なコピーコンテンツからの直リンクを拒否する.htaccessの設定方法。拒否するサイトを指定、許可するサイトを指定する方法、単純な拒否と画像の差し替えを解説。

Apacheの起動しているかの確認方法と起動、再起動、終了のコマンド
Apacheの起動しているかの確認方法と起動、再起動、終了のコマンド

Apacheが起動しているかを確認する方法の解説に加え、Apacheの起動、停止、再起動のコマンドを解説。再起動のコマンドには restart、condrestart、reload、gracefulがあり、違いを解説。

Webサイト公開時に重複コンテンツを排除する.htaccessのリダイレクトの設定のまとめ

サイトを公開する際にはURLの正規化は必須です。正規化とは何かを解説し、.htaccessに設定すべきリダイレクトの設定を具体的に説明します。

直リンク禁止の.htaccessを超分かりやすく解説。日本語じゃなくてPHPで説明

直リンクを禁止する.htaccessの記述内容を日本語ではなくPHPで解説!私自身もこの方法ですっかり理解できました。.htaccessって簡単!って思えますよ。

Selenium WebDriverでFirefoxをプライベートウィンドウ/Chromeをシークレットモードで起動する方法・言語はpython

Seleniumでは初期状態でブラウザを起動する   Seleniumでブラウザ …

日本語は2バイト文字?3バイト文字?

日本語は2バイトという理解でしたが、UTF-8では事情が違います。その説明です。

.htaccessのmod_expiresでブラウザキャッシュで高速化でSEO対策!

Page Speed Insightsの指摘事項のファイルのブラウザキャッシュの設定方法。解説もしてるけど、.htaccessにコピペするだけの簡単設置で効果抜群!SEOにも威力を発揮!

PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。

Pythonの標準では日本語(全角文字)を利用できないので、利用する際は文字コードを宣言する必要がある。「# coding: utf-8」の様に記述すればOK。

chromedriver.exe - ディスクがありませんと出てSeleniumの設定が上手くいかない
chromedriver.exe – ディスクがありませんと出てSeleniumの設定が上手くいかない

Selenium WebDriverを使ってChromeを自動操作する仕組みを作る際、chromedriver.exeを利用しますが、ディスクがありません、というエラーが発生する場合があります。その対処方法を解説します。

SyntaxHighlighterを導入してソースコードを見やすくしてみました

PHP、HTMLなどのソースコードをブログで紹介するとき、SyntaxHighlighterを利用することで見やすく提供することが出来ます。