初めてSeleniumのセットアップからサンプルコード実行までやってみた

今回は初めてのSeleniumにチャレンジしてみました。

Seleniumとはブラウザー自動化を可能にし、それを支えるツール群とライブラリー群プロジェクトになります。

Seleniumドキュメント(日本語)

実際にやってみるとわかるのですが、Python(今回はPythonなので)のパッケージの1つとして動作し、自動でブラウザが開いて文字入力して検索してくれたりします。

自分でもSeleniumやってみようという事でPythonのインストール、ChromeDriverのセットアップ、Seleniumパッケージのインストール、実際にコードを作成して実行してみるまでやってみました。

今回は初めてという事もあり環境はWindows+Pythonを利用しています。

スポンサーリンク

Pythonのインストール

Windows環境にPythonをインストールします。

設定手順

Python公式サイトからダウンロードします。

Pythonダウンロードサイト(公式サイト)

公式サイトのダウンロードボタンをクリックし、インストール用のexeファイルをダウンロードします。

 

ダウンロードしたファイル(python-3.9.4-amd64.exe)をクリックしてインストールを開始します。

Install Nowを選択します。

Add Python 3.9 to PATHにチェックを入れておきます。これにチェックを入れておく事で後でPythonへのパス設定を省略する事が出来ます。

インストールが完了するとSetup was successfulというメッセージが表示されますのでクローズします。

ChromeDriver(WebDriver for Chrome)のセットアップ

ChromeDriver(WebDriver for Chrome)のダウンロード

SeleniumでWEBブラウザ(今回の場合Chrome)を利用する為(具体的にはブラウザをオープンして検索文字列を入れる等)にはWebDriverが必要になります。

設定手順

chromedriverサイトからダウンロードします。

chromedriverダウンロードサイト

Latest Stableを選択します。ファイル置き場に画面が遷移しますのでchromedriver_win32.zipをダウンロードします。

ダウンロードしたZipファイルを解凍すると、chromedriver.exeというファイルが出来ます。こちらを保管します。(後でパス指定しますので分かりやすい場所に置きます。)

今回は、C:\Program Files\chromedriver_win32に置いています。

ChromeDriver(WebDriver for Chrome)のパスを通す

ChromeDriverを呼び出すためのパスを通します。

設定手順

検索画面でシステムの詳細と入力します。(コントロールパネルからでもOKです。)

システムの詳細設定の表示を選択します。


システムのプロパティが表示されますので、環境変数を選択します。

環境変数の画面が表示されますので、Pathを選択し編集をクリックします。
環境変数名の編集が表示されますので、新規をクリックします。

chromedriver.exeファイルを置いた場所を設定します。

今回はC:\Program Files\chromedriver_win32に置いているのでその場所を設定します。

設定が終わったらOKをクリックします。

パスを通しているかを確認します。

Windows端末のコマンドプロンプトでchromedriverと入力します。

パスが通っている場合は、サンプル画面の通り、ChromeDriver was started successfullyとメッセージが表示されます。

Seleniumパッケージをインストール

Seleniumをインストールします。今回はPythonを利用していますので、pip  install(Pythonパッケージのインストール)します。

設定手順
Windowsのコマンドプロンプトの画面でpip install seleniumを実行します。(SeleniumはPythonのパッケージになります。)

Seleniumパッケージを利用してブラウザテストを作成

Seleniumパッケージを利用してブラウザテストを実行する為のコード作成

サンプルを利用してPythonのコードを作成していきます。Seleniumのパッケージを読み込んで実行する形になります。

作成手順

Visual Studio Codeなどのエディタでこのように入力して保存します。今回はselenium.pyという名前で保持んしています。

このコードはchromedriverサイトのGetting started記載内容を若干変更して利用しています。

chromedriver Getting started

    • 修正点
      • 3行目をwebdriver.Chrome()に変更
      • 7行目の検索文字列にtama-negi.comを指定
      • コメントを削除

import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.get('http://www.google.com/’)
time.sleep(5)
search_box = driver.find_element_by_name('q’)
search_box.send_keys('tama-negi.com’)
search_box.submit()
time.sleep(5)
driver.quit()

作成したコードを実行する

作成したPythonのコードを実行します。今回はWindows環境という事もありますのでコマンドプロンプトで実行します。

設定手順

作成したコードを実行してみます。python 先ほど作成したコードを保存した場所で実行します。

コマンドプロンプトでpython C:\selenium.pyと入力し実行してみます。(環境に応じて変更下さい。)

 

c:\>python C:\selenium.py

DevTools listening on ws://127.0.0.1:60755/devtools/browser/XXXXXXXX

[ERROR:device_event_log_impl.cc(214)] [hh:mm:ss.XXX] Bluetooth: bluetooth_adapter_winrt.cc:1072 Getting Default Adapter failed.

※以下のエラーメッセージが表示されています。こちら原因は分からないのですが、大きな問題はないとの事です。

[ERROR:device_event_log_impl.cc(214)] [hh:mm:ss.XXX] Bluetooth: bluetooth_adapter_winrt.cc:1072 Getting Default Adapter failed.

コードを実行するとChromeが自動的に開きます。ブラウザ上部に記載が見えますが、Chromeは自動テストソフトウェアによって制御されていますというメッセージが表示されます。

今回検索文字列にtama-negi.comを指定していますが、その文字列で検索結果が表示されている事が分かります。

自動的にブラウザが終了します。

※今回はコード内で5秒と指定していますので、5秒後にブラウザが閉じます。

今回はセットアップと動作確認までを行ってみましたが、今後も色々試していきたいと思います。