2009-10-16 7 views

Répondre

1

Hey, je suis sur un navigateur Web sans tête et Xvfb. Tout d'abord, installer les dépendances de package par exemple Ubuntu:

sudo apt-get install xvfb imagemagick x11-apps 

Lancez ensuite le shellcript ci-dessous en utilisant sudo pour certains "utilisateur nobody", comme ceci:

/usr/bin/sudo -u nobody /path/screengrab.sh www.ibm.com 34344 >>/tmp/screengrab.log 2>&1 

Vous pourriez avoir besoin d'ajuster la culture, etc.

#!/bin/bash 

rm -rf /home/nobody/.mozilla/ 

XAUTHORITY= 

Xvfb :$2 -pixdepths 32 -screen 0 1024x1024x24 >/dev/null 2>&1 & 
XPID=$! 

sleep 1 

firefox -width 2000 -height 1024 --display :$2 http://$1 & 
FPID=$! 

sleep 6 
xwd -display :$2 -root -out /tmp/$2-$$.xwd 

convert /tmp/$2-$$.xwd /u0/screengrabs/$1.png # Cache 
convert -resize 300x300 /tmp/$2.xwd /tmp/$2-$$.png 
convert -crop 287x248+0+29 /tmp/${2}-$$.png /tmp/${2}2-$$.png 

mkdir -p /home/je/www/domaintool.se/docs/images/$1 
cp /tmp/${2}2-$$.png /home/je/www/domaintool.se/docs/images/$1/`date +%Y%m%d`.png 
rm -f /tmp/$2-$$.png /tmp/$2-$$.xwd /tmp/${2}2-$$.png 

kill $XPID >/dev/null 2>&1 
kill $FPID >/dev/null 2>&1 
1

J'utilise cet excellent plugin Firefox Attrapez-les tous https://addons.mozilla.org/en-US/firefox/addon/7800/ qui est une version de l'auteur aussi excellent Screengrab ajouter. Les saisir Toutes vous permet de pointer le navigateur vers une liste d'URL puis de produire toutes les captures d'écran pour vous dans un répertoire spécifié. Cela fonctionne génial avec la plupart des sites Web.

Cependant, j'essaie de générer des captures d'écran de Google Maps URLs qui ne fonctionnent pas pour le moment car les pages ne sont pas des pages standard - elles utilisent des cadres, etc. installer. J'espère que cela pourra aider.

Questions connexes