63 votes

Programme en ligne de commande pour créer des captures d'écran de sites Web (sous Linux)

Qu'est-ce qu'un bon outil en ligne de commande pour créer des captures d'écran de sites Web sous Linux? J'ai besoin de générer automatiquement des captures d'écran de sites Web sans interaction humaine. Le seul outil que j'ai trouvé était khtml2png , mais je me demande s'il y en a d'autres qui ne sont pas basés sur khtml (c'est-à-dire qui ont un bon support JavaScript, ...).

57voto

Shannon Nelson Points 1364

Un peu plus de détail pourrait être utile...

Démarrer firefox (ou autre navigateur) dans une session X, soit sur votre console ou à l'aide d'un vncserver. Vous pouvez utiliser l' --height et --width options pour définir la taille de la fenêtre en plein écran. Un autre firefox commande peut être utilisée pour définir l'URL affichée dans la première fenêtre de firefox. Maintenant, vous pouvez récupérer l'image à l'écran avec l'un de plusieurs commandes, telles que la commande "importer ..." à partir du paquet Imagemagick, ou à l'aide de gimp, ou fbgrab, ou xv.

#!/bin/sh

# start a server with a specific DISPLAY
vncserver :11 -geometry 1024x768

# start firefox in this vnc session
firefox --display :11

# read URLs from a data file in a loop
count=1
while read url
do
    # send URL to the firefox session
    firefox --display :11 $url

    # take a picture after waiting a bit for the load to finish
    sleep 5
    import -window root image$count.jpg

    count=`expr $count + 1`
done < url_list.txt

# clean up when done
vncserver -kill :11

38voto

m7n7 Points 211

Essayez le petit outil CutyCapt , qui ne dépend que de Qt et QtWebkit. ;)

8voto

MaxiWheat Points 2604

Jetez un coup d’œil à PhantomJS , qui semble être un moteur Webkit gratuit et scritable qui fonctionne sous Linux, OSX et Windows. Je ne l'utilise plus depuis que nous utilisons actuellement Browshot (solution commerciale), mais lorsque tous nos crédits seront épuisés, nous aurons un butin sérieux (car c'est gratuit et peut s'exécuter sur nos serveurs).

5voto

Hamish Downer Points 4086

scrot est un outil de ligne de commande pour faire des captures d'écran. Voir la page de man et de ce tutoriel.

Vous pouvez également regarder des scripts du navigateur. Il existe des modules complémentaires de firefox que prendre des captures d'écran comme screengrab (qui peut capturer l'intégralité d'une page, si vous voulez, et pas seulement le visible bits) et vous pouvez ensuite le script de votre navigateur avec greasemonkey pour prendre les captures d'écran.

2voto

Paul Whelan Points 8620

Je sais que ce n'est pas un outil de ligne de commande, mais vous pouvez facilement créer un script pour utiliser http://browsershots.org/ Inutile pour les applications non hébergées sur des adresses IP externes.

Un excellent outil néanmoins.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X