Python Selenium でブラウザのスクリーンショットを保存する
WebDriverのsave_screenshot()メソッドを使用してWEBサイトのスクリーンショットを撮影するコードです。
必要なライブラリのインストール
pip install selenium
スクリーンショットを取得するコード
from selenium import webdriver
url = 'https://www.example.com/'
# Chromeドライバのオプション設定
chrome_options = webdriver.ChromeOptions()
chrome_options.headless = True
chrome_options.add_argument("--window-size=1920x1080")
chrome_options.add_argument("--start-maximized")
# ChromeのWebDriverオブジェクトを作成
driver = webdriver.Chrome(options=chrome_options)
# URLにアクセス
driver.get(url)
# スクリーンショットを保存
driver.save_screenshot('screenshot.png')
# ブラウザを閉じる
driver.quit()
上記のコードは、URLの全ページのスクリーンショットを取得し、screenshot.pngというファイル名で保存します。
ロードに時間がかかるページの場合は
import time
driver.get(url)の前に
time.sleep(10)
と追記すると10秒待ってからスクリーショットが撮影されます。
使用するブラウザのドライバ(この例ではchromedriver)をダウンロードして、適切なパスに配置するか、またはそのパスをwebdriver.Chrome()の引数として指定する必要があります。
スクレイピングの理解を深めたい方はこちらの書籍がおすすめです。