Seleniumとchromedriverでブラウザの自動操作を行い、スクリーンショットで画像を保存する

PythonでSeleniumという便利なライブラリを利用すれば、ブラウザーを自動操作することができます。

今回は自動操作でgoogleの検索から、検索結果をスクリーンショットするまでのコードを紹介します。

環境

環境は以下になります。

環境

・macOS Big Sur

・python 3.9

・Chorme 87.0

到達目標

上の画像が今回のゴールになります。

pythonファイルからの自動操縦で、「django」の検索結果からそのままスクリーンショットを行いました。

通常だとMacの場合

shift + command + 3

shift + command + 4

あたりかと思いますが、全てpythonのコードで実行します。

インストール

必要なライブラリをインストールします。

ヒロヤンはpipenvを使用しているので以下のようにpipenvにインストールを実行します。

$ pipenv install chromedriver_binary  
$ pipenv install selenium

コードの実行

準備ができたのでコードを書いていきます。

sample.py

import chromedriver_binary
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
from selenium import webdriver


options = Options()
driver = webdriver.Chrome(options=options)
driver.get('https://www.google.co.jp/')

# タイトルにgoogleが含まれていることを確認する
assert 'Google' in driver.title

# 検索語を入力して送信する
input_element = driver.find_element_by_name('q')
input_element.send_keys('django')
input_element.send_keys(Keys.RETURN)
# タイトルに'Python'が含まれていることを確認する
assert 'django' in driver.title

# スクリーンショットを撮る
driver.save_screenshot('django_result.png')

コードが具体的に何をしているかはコメントアウトに書いた通りです。

$python sample.py

こちらを実行すると自動的にChromeブラウザが立ち上がりコードを実行していきます。

最終行の $driver.save_screenshot(‘django_result.png’)

でスクリーンショットが実行され、このsample.pyファイルと同じディレクトリに、django_result.pngというファイル名でスクリーンショットされた画像が保存されています。

最後に

いかがでしたでしょうか。

以上が、「【MacOS】Seleniumとchromedriverでブラウザの自動操作」の記事紹介になります。

スクールを利用して本格的に学ぶ

いかがでしたでしょうか?

10人中9人が挫折すると言われるプログラミングを、ヒロヤンも実はプログラミングスクールで学習をしてきたからで、結果、今はPythonエンジニアとして働いています。

挫折率が高いプログラミングこそお金を払ってメンターを付けて、道を見失わないように環境を構築する必要があるのではないでしょうか。

これはダイエットで自分一人では痩せられないけど、トレーナーを付けて否が応でもせざるを得ない環境を作ると一緒ですね。

ヒロヤンもプログラミング勉強開始直後はあれこれ悩みましたが、悩むよりも手っ取り早くスクールに登録した方が最短ルートで勉強できるのではないかと考え、結果挫折せずに今に至っています。

今なら無料でキャリアカウンセリングを行っているCodeCampのPythonコースのようなプログラミングスクールもありますのでこれを機会に是非カウンセリングだけでも受けてみてはいかがでしょうか?

CodeCampで無料のカウンセリング

上記リンク先から無料相談ができます。

またこちら(↓)ではPython専用のプログラミングスクールをまとめ紹介しています。

コメントを残す

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