2 votes

Capture d'écran de la page web de Firefox à l'aide d'un script shell

J'ai quelques fonctions qui s'exécutent dans des terminaux Unix. Dans ces fonctions, je veux incorporer cet utilitaire. Je veux faire une capture d'écran de la page web de Firefox en utilisant un script shell. Par exemple, dans cette fonction, un fichier HTML est généré. Je dois ouvrir ce fichier HTML dans Firefox en utilisant l'interpréteur de commandes Cmd, puis je dois le mettre en plein écran et faire une capture d'écran de cette fenêtre Firefox, mais le problème ici est que j'ai plusieurs Windows qui exécutent la même fonction, donc si j'utilise cette fonction dans différents terminaux en même temps, plusieurs Firefox s'ouvriront et il n'y aura pas de capture d'écran correcte. En outre, je tiens à mentionner ici que j'ai essayé xdotool sous Unix, mais j'obtiens parfois les messages d'erreur ci-dessous.

Le script que j'utilise

set window_id [ xdotool search --pid $pid --name "firefox" | tail -1]
xdotool search --onlyvisible --class "firefox" set_window $window_id windowraise
xdotool search --onlyvisible --class "firefox" set_window $window_id key F11
sleep 3
xdotool search --onlyvisible --class "firefox" set_window $window_id windowraise
sleep 2
import -window $window_id ~/image.jpg
xdotool windowactivate --sync $window_id
xdotool search --onlyvisible --class "firefox" set_window $window_id windowraise
xdotool search --onlyvisible --class "firefox" set_window $window_id key ctrl+q
sleep 0.1

pour ouvrir un firefox en utilisant le shell - j'utilise la ligne suivante

/usr/pkgs/firefox/bin/firefox --setDefaultBrowser --new-instance ~/test.html

Je tiens également à mentionner que j'ai essayé xdotool sous UNIX. mais j'obtiens parfois les messages d'erreur ci-dessous -

X Erreur d'échec de la demande : BadWindow (paramètre Window invalide)

0voto

Abhishek Rai Points 1620

C'est une solution qui fonctionne.

sudo apt-get install xautomation

sudo apt-get install gnome-screenshot

xte 'keydown Alt_L' 'key Tab' 'keyup Alt_L' 'key Tab`(send as many tabs as windows switchs)
gnome-screenshot

Vous pouvez l'enregistrer comme un .sh et l'exécuter également.

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