M.: automatischer Screenshot

Beitrag lesen

Mahlzeit,
für ein Datenbankprojekt mache ich automatische Screenshots der entsprechenden Webseiten (aktuell ca. 50000 Stück)
Die Screenshots laufen auf nem Rechner ohne GUI (Linux).
Jetzt wollte ich mal nachfragen, ob jemand ne elegantere Lösung hat, weil mein Problem ist, dass ich ne feste Wartezeit bis zum Seitenaufbau angeben muss, da der Browser keine Rückmeldung gibt, ob die Seite fertig geladen ist.

  
#!/bin/sh  
  
# Schlafzeit  
SLEEP=10  
  
# Framebuffer starten  
echo Xfvb starten  
Xvfb :2 -screen 0 1280x1024x24 -ac &  
  
# Icewesel aufrufen  
echo iceweasel starten  
DISPLAY=:2 iceweasel -P "normal Surfen" -width 1280 -height 1024 -new-window $1 &  
echo iceweasel gestartet mit Seite $1  
  
# Schlafen bis Seite aufgebaut ist  
echo schlafen für $SLEEP sekunden.....  
sleep $SLEEP 1> /dev/null 2> /dev/null  
echo ausgeschlafen  
  
# Screenshot  
echo Screenshot  
DISPLAY=:2 xwd -root -silent | xwdtopnm  | pnmscale -xysize 1280 1024 | pnmtojpeg > modules/streamlist/pics/original/$2.jpg  
  
# Icewesel killen  
echo Killen  
killall firefox-bin  

Das ganze wird von einem PHP-Script gestartet, dass in $1 die URl und in $2 eine ID übergibt. Am Ende wird dann durch das PHP-Script Xvfb wieder gekillt.

Das Script webthumb,das im Web rumgeistert,macht es ähnlich, läuft aber nicht ohne massive Änderungen, deshalb lieber was eigenes.

Das Script wartet in diesem Fall also 10 Sekunden bevor der Screenshot gemacht wird. Gibts evtl. ne Lösung um zu erfahren, ob der Browser (in diesem Fall icewesel, also Firefox unter Debian) mit dem Laden fertig ist?