Générer des miniatures (ou copies d’écran) de n’importe quel site pour en faire une page de présentation ou pour aider les visiteurs à mieux se repérer dans votre index est quelque chose de plutôt fastidieux si l’on doit le faire soit-même à la main. C’est pourquoi, il existe des solutions pour faire ceci depuis votre ordinateur personnel (sous Debian et ses dérivées – Ubuntu, Xubuntu, etc…) avec (ou sans, avec xvfb) serveur X (graphique).
Information: D-Sites a créer un service nommé Print-Site qui vous permet de créer ces images de sites gratuitement sans aucune installation. Les serveurs de D-Sites s’occupent de tout ! Visitez l’annonce ou la page du projet Print-Site.
CutyCapt, un programme tout fait
Nous n’allons pas ré-inventer la roue, il existe des logiciels tous fait pour faire ça. C’est le cas de CutyCapt qui est une solution utilisant Qt4 et Webkit, que nous allons utiliser. Avant toute chose, nous allons installer Qt4 et tous les paquets relatifs nécessaires à l’exécution de CutyCapt :
apt-get install libqt4-webkit libqt4-dev g++
Ces paquets font environ 20Mo à télécharger puis prennent près de 50Mo une fois installés. Lorsqu’ils sont installés, nous allons télécharger CutyCapt depuis une archive hébergée par Mes-Stats :
wget http://sources.mes-stats.fr/cutycapt/cutycapt-r2.tar.gz
Vous pouvez aussi télécharger la dernière version de CutyCapt depuis les dépots SVN, afin d’être sur d’avoir la dernière version. Néanmoins, il se peux qu’il y ait certains bugs ou certaines fonctionnalités de changées…
svn co http://cutycapt.svn.sourceforge.net/svnroot/cutycapt
Puis nous allons décompresser
tar -xzf cutycapt-r2.tar.gz cd cutycapt
Nous allons ensuite compiler ce programme Qt4 en exécutant ces deux commandes:
qmake make
Note: Si lors de la compilation (make) il y a un grand nombre d’erreurs, ré-essayez en remplacant qmake par qmake-qt4. En effet, sur certaines distributions, Qt est déjà installée en sa version 3 et qmake correspond à cette version.
Exécuter CutyCapt
Avec un serveur X
Si vous utilisez une machine qui a un serveur X installé, vous pourrez dès à présent utiliser CutyCapt en une seule commande:
./CutyCapt --url=http://www.d-sites.com --out=d-sites.png
Ce qui vous produit une image contenant une capture d’écran de D-Sites nommée “d-sites.png” encodée en… PNG !
Note: CutyCapt vous permet d’exporter des images sous les formes svg, ps, pdf, itext, html, rtree, png, jpeg, mng, tiff, gif, bmp, ppm, xbm et xpm. Bien entendu, les rendus sous forme d’images fixes (png, gif, etc…) sont beaucoup plus surs que les rendus sous forme de PDF, SVG et autres.
Sans serveur X
Si vous n’avez pas de serveur X, en installer un prendrait trop de ressources par rapport à l’utilisation (probable) qu’il en serait fait. Pour ça, il existe Xvfb (X Virtual Frame Buffer) qui vous permet de simuler un serveur X le temps d’une requête. Il faut donc l’installer avant tout:
apt-get install xvfb
Ensuite, nous allons exécuter CutyCapt dans un serveur X virtuel de cette manière:
xvfb-run --server-args="-screen 0, 1024x768x24" ./CutyCapt --url=http://www.d-sites.com --out=d-sites.png
CutyCapt s’éxécutera ainsi dans une fenêtre de résolution 1024×768, ce qui n’a en réalité aucune importance. Pour spécifier la largeur de la page, utilisez l’option “–max-width=[...]” avec une valeur en pixels.
Attention: Malgré le fait que cette méthode est très attractive, elle n’est vraiment pas très performante. En effet, rien que pour s’initialiser, xvfb-run peut mettre jusqu’à 3 secondes ! Installer un serveur X n’est donc en fait pas une mauvaise alternative…
Pingback: Debian: Installer un serveur X » D-Sites
quelqu’un a t il rencontré des problème avec libqt4-webkit ?
et aurait-il réussi a régler son problème
ps: linux debian
Si vous présentiez un peu plus votre problème, ça serait beaucoup plus simple pour tout le monde de vous aider !