Dies kann absolut getan werden, es dauert nur ein wenig mehr als PHP, um es zu ermöglichen. Ich habe eine Anwendung in PHP geschrieben, die in bestimmten Abständen Schnappschüsse von Websites erstellt. Es ist ein bisschen schwierig in Gang zu bringen, aber hier ist die Schritte, die ich auf einer Linux-Maschine nahm:
- Installieren Xvfb (oder VNC-Server) eine X-Windows-Sitzung im Speicher zu emulieren. Starten Sie Xvfb auf dem Display: 1
- Installieren Sie Firefox
- installieren ImageMagick
- ein Bash-Skript erstellen Firefox auf die gewünschte URL zu laufen. Meine sah so aus:
.
#!/bin/bash
DISPLAY=:1 firefox &
sleep 2s
DISPLAY=:1 firefox -kill-all &
sleep 1s
DISPLAY=:1 firefox -url $1 &
sleep 5s
DISPLAY=:1 import -window root /var/www/images/screenshots/$2.png
- das Skript von PHP Execute:
.
exec ('sh ../scripts/screencap.sh ' . $url . ' ' . $file_name);
Der schwierigste Teil für mich war, den Browser zum Vollbild zu bekommen, als der Screenshot auftrat. Da Sie nicht direkt auf den Browser zugreifen können, müssen Sie alles über die Konfigurationsdateien von Firefox konfigurieren, was einige Zeit dauern kann.
Nützliche Links zu erleichtern Ihnen den Einstieg:
http://semicomplete.com/blog/geekery/xvfb-firefox.html http://www.webmasterworld.com/forum21/9182.htm
http://stackoverflow.com/questions/713938/how-can-i-generate-a-screenshot-of-a- webpage-using-a-server-side-script – vsr
Ich bin spezifisch für PHP, aber Sie haben etwas cooles Dankeschön geteilt :) – Sarfraz