Wie man Screenshots mit Python und Selenium anlegt, möchte ich an diesem einfachen Beispiel erklären. Vorraussetzung ist natürlich, dass man den Selenium Webdriver installiert und integriert hat. Dazu werde ich aber einen gesonderten Artikel erstellen der dies ausführlich erklärt.

Jeder WebDriver hat eine .save_screenshot(filename) Methode. Für den Firefox WebDriver kann die Funktion so aussehen:

from selenium import webdriver

browser = webdriver.Firefox()
browser.get(‘http://www.google.com/’)
browser.save_screenshot('screenie.png’)
browser.quit()

Verwirrenderweise existiert auch eine

.get_screenshot_as_file(filename)

-Methode, die dasselbe macht.

Es gibt auch Methoden für:

.get_screenshot_as_base64()

(zum Einbetten in HTML) und

.get_screenshot_as_png()

(zum Abrufen von Binärdaten).

Zu beachten ist, dass WebElements über eine

.screenshot() )

-Methode verfügt, die ähnlich funktioniert, aber nur das ausgewählte Element erfasst.