概要
Webサイトを作成した際、定期的に画面が遷移したり、特定の動きをシナリオとして動かしてスクリーンショットを取るとき、 手動で実行していくのは大変です。今回Seleniumを使って、定期的にWebサイトが遷移していく様子をスクリーンショットを撮るように自動化しました。
インストール
今回はmacOS Mojaveにインストールします。
pip install selenium
brew cask install chromedriver
サンプルコード
5秒ごとにgoogle再読み込みを行い、スクリーンショットを撮るコードを試しに書いてみました。
・url = "https://www.google.co.jp" ⇒ 対象URL
・count = 5 ⇒ 試行回数
・sleep_time = 5 ⇒ 実行間隔
vi selenium_test.py
######################### #Test URL url = "https://www.google.co.jp" #Test Count count = 5 #test interval sleep_time = 5 ########################## from selenium import webdriver import time import datetime driver = webdriver.Chrome() driver.get(url) i = 0 while i < count: now = datetime.datetime.now() file_name = "./file_{0:%H%M}.png".format(now) sfile = driver.get_screenshot_as_file(file_name) time.sleep(sleep_time) driver.refresh() print(sfile) i+=1
実行
chomeが開かれて5秒毎に実行したフォルダに日付でpngファイルができていれば成功です。
python selenium_test.py