【初心者向け】
はじめてのSelenium&Python
導入手順まとめ
PR
ブラウザでの自動テストなどで定番のSeleniumと、AI開発にも使われている人気プログラミング言語Python。
ここでは、SeleniumもPythonもまったく分からない状態から、実際にSelenium+Pythonで簡単なブラウザ操作(Chrome)をできるまでの導入手順をまとめてみました。
動作環境はWindows10です。
Seleniumとは?
Pythonで動かす理由
Seleniumは、ブラウザ操作に特化したオープンソースライブラリです。
Python、java script(Node.js)、Ruby、C#などの対応しているプログラム言語で使うことができます。
Seleniumは誰でも無料で使えて(C#言語利用での一定規模の法人などを除く)、使いなれた言語が対応していれば学習コストもかからず、手軽に使えるのが魅力です。
最も一般的なのはSelenium+Pythonの組み合わせと言われていて、ネット上での情報も豊富です。
Pythonは複雑になりがちなプログラムソースの問題を解決するために設計された言語で、見やすいシンプルな記述が大きな特徴。AI開発などにも使われる世界的に人気の高い言語です。
少ない記述でプログラムを書けるため初心者でも始めやすいということで、Seleniumで使う言語にこだわりがない場合は、よくPythonがおすすめされています。
私も、Seleniumでブラウザ操作をしてみたいと思い立ったものの、どれも慣れていない言語だったので、おとなしくPythonで始めてみることにしました。
ここからは、まるっきりSeleniumもPythonも始めてな状態からの、実際の導入手順を見ていきます。
Selenium+Python
導入方法
まずは、今回のSeleniumをPythonで使うまでの手順を、ざっと見ておきましょう。
①Pythonをダウンロード
PCにPythonが入っていない場合はダウンロードして入手する必要があります。
②Seleniumをインストール
SeleniumはPythonさえあればすぐにインストールできます。
③ChromeDriverをダウンロード
Chromeをプログラムから操作するために必要なドライバーです。
今回はSeleniumでChromeを動かすのが目的なのでChrome用のドライバーですが、別のブラウザを動かす場合は、そのブラウザ用のドライバーを入手する事になります。
こういった手順になります。
ここからは、もろもろ必要なものをインストールして動作確認するまでの、具体的なSelenium+Pythonの導入手順を見ていきます。
なお、今回の記事ではこちらの記事などを参考にしています。
Pythonのダウンロード
SeleniumはPythonで書かれたソフトウェアの管理システムである「pip」でインストールするため、まずはPCにPythonが入っているか確認します。「Windowsアイコン(田)」を右クリックして「コマンドプロンプト(C)」をクリック。
コマンドプロンプトの黒い画面が出てきたら、以下を入力します。
Python -V
PythonがPCにインストールされている場合はPythonのバージョンが表示されるので、次へ。
何も表示されない、「~認識されていません」といった表示が出た場合には、PCにPythonは入っていません。
まずは、PCにPythonをダウンロードする必要があります。
©PythonSoftwareFoundation
Pythonのダウンロードページで、黄色のダウンロードボタンをクリック。
今回は「Python-3.10.5-amd64.exe」というファイルがダウンロードされました。
参考ページ によると、こちらのページで入手できるPythonは32bit版とのことですが、64bit版のPCでも問題なく使えます。
Pythonは64bit版より32bit版の方が動作が安定しているらしく、メモリを大量に使う動作をさせる場合以外では、32bit版を使うことが多いようです。
余談ですが、実際にダウンロードしてみると「ファイルに64って書いてある……」と戸惑いましたが、安定版になっており特に問題なく動いています。
話を戻しましょう!
Pythonダウンロードページから、ダウンロードされた「.exe」ファイルをダブルクリック。
インストーラーが起動するので、「Add Python 3.10 to PATH」にチェックを入れて「install Now」をクリック。
©PythonSoftwareFoundation
「Add Python 3.10 to PATH」にチェックを入れると、自動で「環境変数」にPythonの設置場所が登録されるので、あとでPATHを通す手間が省けます(事あるごとにPythonのフルパスを書かなくていいので楽です)。
あとは、インストールされるまで少し待ちます。
インストールが完了したら、もう1度コマンドプロンプトで以下を入力。
Python -V
Seleniumのインストール
続いて、Seleniumをインストールします。
Seleniumのインストールは、コマンドプロンプトで以下を入力して「Enter」キーを押します。
pip install selenium
ついでに、ドライバーのバージョン管理ソフト「webdriver-manager」もインストールしておくと、次の手順である「Chrome Driver」を自動で更新できるようになり、ベンリです。「webdriver-manager」のインストールは、コマンドプロンプトで以下を入力して「Enter」キーを押します。
pip install webdriver-manager
Chrome Driverのダウンロード
続いて、Chromeをプログラムから制御するためのドライバー「Chrome Driver」をダウンロードします。「Chrome Driver」はChromeのバージョンと合わせる必要があり、どちらも最新版でないとうまく動かないことがあるそうです。
まずはChromeを起動して「︙」メニューをクリック、「ヘルプ>Chromeについて」でChromeのバージョンを確認できます。
最新版になっていればOK。最新版でない場合は、更新して最新版にしておきます。
続いて、Chromeのバージョンに合わせた「Chrome Driver」を入手します。
今回はChromeは最新状態でしたが、「Chrome Driver」でぴったり同じバージョンがなかったので、一番近いものをクリック。
ダウンロードページになるので、PCのOSに合わせた「.zip」リンク(今回は「chromedriver_win_32.zip」)をクリック。「chromedriver.exe」というファイルがダウンロードされます。「chromedriver.exe」は通常「ダウンロードフォルダ」に保存されていると思いますが、今回は便宜上、「C:」ドライブ直下に移動しておきます(場所をわかりやすくするためです)。
Selenium+Python
動作テスト
ここまできたら、早速テスト運転してみましょう!
テキストエディターなどで以下を記述して、お好みでファイル名をつけ、拡張子は「.py」で保存します。ここでは「test.py」としてみます。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys as keys
driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
driver.get("https://google.com/")
保存したファイルをダブルクリック。
すると、書かれたプログラムが実行され、ChromeでGoogle検索ページが自動で開くと思います。
3行目の「"C:\chromedriver.exe"」の部分で、「chromedriver.exe」の保存場所を指定しています。
今回は分かりやすくするために「C:」ドライブ直下で実行していますが、もし別の場所(お好みのフォルダなど)に設置している場合は、その場所のフルパスに変更してください。
また、「webdriver-manager」を使うと、プログラム起動時にChromeのバージョンに合った「Chrome Driver」を自動で更新してくれます。
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get('https://google.com/')
通常はChromeの更新のたびに、手動で「Chrome Driver」をダウンロードしないとプログラムが動かなくなったりするので、手間が省けるのは嬉しいですね!
どちらにせよ、Chromeでページがうまく表示されたら、Selenium+Pythonでの起動テストは成功です!
お疲れ様でした!!
【Selenium】webdriver-managerのおかげでChrome Driverのバージョンを気にしなくてよくなった話|Qiita
【Python】Seleniumの使用方法メモ|Qiita
はじめてのSelenium+Python
余談
SeleniumもPythonも、ネット上には日本語の情報もまずまず豊富です。
特にPythonの基本的な書き方などは、検索すると色々な情報が出てきます。
根気強く取り込めば、独学でもそれなりのプログラムは組みやすいかなと思います。
私は検索で調べながらコツコツ組み立てていますが、まるっきりの初心者なので、なるべく分かりやすい記事を選んで参考にしています。
それでも一人では難しい場合や、予算に余裕がある、つまづいた時はすぐに専門家に聞きたいという時は、オンラインですぐに質問できるプログラミングスクールなどを検討してみるのも、1つの選択かも知れません。