Um auf der Kommandozeile Screenshots von einem Webbrowser zu machen, gibt es eine Reihe von Programmen und Modulen. Typischerweise werden dann ein virtueller X-Server und darin ein Browser gestartet und schließlich ein Screenshot aufgenommen. Für Python-Skripts gibt es zur Unterstützung zwei Libraries: Pyvirtualdisplay hilft beim Start eines virtuellen Screens, das Selenium-Modul bei der Fernsteuerung des Browsers.
Den virtuellen X-Server installiert unter Ubuntu/Debian "apt-get install xvfb". Der Aufruf "apt-get install python-pip" holt dann den Modulmanager für Python aus dem Repository. Die nötigen Python-Module installieren anschließend die Aufrufe (als Root):
pip install selenium pip install pyvirtualdisplay
Ein kleines Skript, das einen Screenshot von www.admin-magazin.de anfertigt, sieht dann so aus:
from pyvirtualdisplay import Display from selenium import webdriver
display = Display(visible=0, size=(1280, 1024)) display.start()
browser = webdriver.Firefox() browser.get("http://www.admin-magazin.de") browser.save_screenshot("admin.png") browser.quit()
display.stop()