Python での Selenium のスクリーンショット

Manav Narula 2023年6月21日
  1. save_screenshot() 関数を使用して、Python で selenium を使用してスクリーンショットをキャプチャする
  2. get_screenshot_as_file() 関数を使用して、Python で selenium を使用してスクリーンショットをキャプチャする
  3. Screenshot-Selenium パッケージを使用して、Python で selenium を使用してスクリーンショットをキャプチャする
  4. まとめ
Python での Selenium のスクリーンショット

selenium を使用して、自動化された Web ブラウザーで Python スクリプトを使用してタスクを実行できます。 さまざまな方法を使用して、ブラウザの画面をスクリーンショットとしてキャプチャできます。

このチュートリアルでは、Python で selenium を使用して自動ブラウザのスクリーンショットをキャプチャする方法を示します。

save_screenshot() 関数を使用して、Python で selenium を使用してスクリーンショットをキャプチャする

selenium パッケージは save_screenshot() 関数を提供して、自動ブラウザで開いた Web ページのスクリーンショットを撮ります。

関数内でファイル名 (PNG 形式) とスクリーンショットのパスを指定できます。 この関数は、webdriver オブジェクトで使用されます。

以下のコードを参照してください。

from selenium import webdriver

driver = webdriver.Chrome(r"C:/driverpath/chromedriver.exe")
driver.get("https://www.delftstack.com/")
driver.save_screenshot("filename.png")

上記の例では、webdriver オブジェクトを作成し、get() 関数で必要な URL への接続を作成します。 次に、save_screenshot() 関数を使用してスクリーンショットをキャプチャし、保存します。

get_screenshot_as_file() 関数を使用して、Python で selenium を使用してスクリーンショットをキャプチャする

get_screenshot_as_file() 関数は、webdriver オブジェクトのスクリーンショットを含むファイルも作成します。 関数で言及することにより、ファイルを目的のパスに保存できます。

ファイルが正常に作成された場合、True を返します。 例外がある場合、関数は False を返します。

例えば:

from selenium import webdriver

driver = webdriver.Chrome(r"C:/driverpath/chromedriver.exe")
driver.get("https://www.delftstack.com/")
driver.get_screenshot_as_file("filename1.png")

Screenshot-Selenium パッケージを使用して、Python で selenium を使用してスクリーンショットをキャプチャする

Selenium-Screenshot パッケージを使用して、webdriver の HTML 要素のスクリーンショットをキャプチャできます。

このパッケージは Python 3 と互換性があり、pip install Selenium-Screenshot を使用してインストールできます。 これを使用して、HTML 要素のクリッピングを個別にキャプチャすることもできます。

full_screenshot() 関数を使用して、ブラウザ ウィンドウ全体をキャプチャできます。 これを使用するには、最初に Screenshot クラスのオブジェクトを作成する必要があります。

webdriver オブジェクトとファイル名は、full_screenshot() 関数内で指定されます。

以下のコードを参照してください。

from selenium import webdriver
from Screenshot import Screenshot_Clipping

s = Screenshot_Clipping.Screenshot()
driver = webdriver.Chrome(r"C:/driverpath/chromedriver.exe")
driver.get("https://www.delftstack.com/")
s.full_Screenshot(driver, save_path=r".", image_name="name.png")

上記の例では、full_screenshot() 関数を使用してスクリーンショットをキャプチャします。 image_name パラメータと save_path パラメータを使用して、ファイルの名前とパスを指定します。

まとめ

Python で selenium を使用してスクリーンショットを撮る方法について説明しました。 save_screenshot() および get_screenshot_as_file() 関数を使用して、スクリーンショットを PNG ファイルとして保存できます。

または、Selenium-Screenshot というサブパッケージをインストールし、それを使用してブラウザで Web ページをキャプチャすることもできます。

著者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

関連記事 - Python Selenium