Estou executando o Firefox em um Xvfb em um VPS. O que eu quero fazer é tirar uma captura de tela da página inteira.
Posso redirecionar o Firefox para uma página específica usando
firefox http://google.com
e tire uma captura de tela (dentro do X) usando o ImageMagick
import root -window output.jpg
O problema é que a maior parte da página precisa ser rolada e não sei a altura de antemão.
A outra maneira é escolher uma altura muito grande (como 4000px) e depois processar a imagem e remover a parte inútil. Mas isso é processamento desnecessário.
Encontrei muitos complementos do Firefox, mas estou procurando uma solução que possa ser programada usando a linha de comando do Shell.
Edit: Acabei escrevendo minha própria extensão FireFox para fazer isso.
shell
firefox
command-line
screenshot
Omar Abid
fonte
fonte
Respostas:
A barra de ferramentas do desenvolvedor GCLI e o atalho Shift+ F2foram removidos na versão 60 do Firefox . Para tirar uma captura de tela em 60 ou mais recente:
:screenshot
ou:screenshot --fullpage
Saiba mais sobre capturas de tela e outros recursos
Para versões do Firefox <60:
Pressione Shift+ F2ou vá para Ferramentas> Desenvolvedor Web> Barra de Ferramentas do Desenvolvedor para abrir uma linha de comando. Escrever:
e pressione Enter para tirar uma captura de tela.
Para responder totalmente à pergunta, você pode até salvar a página inteira, não apenas a parte visível:
E para copiar a captura de tela para a área de transferência, use a
--clipboard
opção:Firefox 18 altera a maneira como os argumentos são transmitidos aos comandos, você deve adicionar "-" antes deles.
Você pode encontrar alguma documentação e a lista completa de comandos aqui .
PS. As capturas de tela são salvas no diretório de downloads por padrão.
fonte
right-click
->screenshot node
. Isso é super útil quando você deseja capturar a tela de uma seção de uma página.screenshot --clipboard --fullpage
Captura de tela de um nó particular (por ID) -screenshot --clipboard --selector #elementId
:screenshot --clipboard --fullpage
(mente do cólon)Atualização 2018-07-23
Como acabamos de salientar nos comentários, essa pergunta era sobre obter uma captura de tela na linha de comando . Desculpe, acabei de ler sobre isso. Então, aqui está a resposta correta:
No Firefox 57, você pode criar uma captura de tela no modo decapitado como este:
Leia mais na documentação .
Atualização 15/06/2017
No Firefox 55, existem os Screenshots do Firefox como uma alternativa mais flexível. A partir do Firefox 57, as capturas de tela também podem capturar uma página inteira.
Resposta original
Desde o Firefox 32, também há um botão de captura de tela de página inteira nas ferramentas de desenvolvedor (F12). Se não estiver ativado, vá para as configurações das ferramentas do desenvolvedor (botão de engrenagem) e escolha "Tirar uma captura de tela de página inteira" na seção "Botões disponíveis da caixa de ferramentas".
fonte: developer.mozilla.org
Por padrão, as capturas de tela são salvas no diretório de download. Isso funciona da mesma forma
screenshot --fullpage
na barra de ferramentas.fonte
cmd
+alt
+i
Acabei codificando uma solução personalizada (extensão Firefox) que faz isso. Acho que, quando o desenvolvi, a linha de comando mencionada no Enreas não estava lá.
A extensão do Firefox é CmdShots . É uma boa opção se você precisar de um controle mais refinado sobre o processo de captura da captura de tela (ou desejar fazer algumas modificações em HTML / JS e processamento de imagem).
Você pode usá-lo e abusar dele. Decidi mantê-lo sem licença, para que você possa brincar com ele como quiser.
fonte
Eu acho que o que você está procurando é um utilitário que permita salvar uma página completa aberta no seu navegador em um arquivo png. Provavelmente você está procurando um utilitário como commandlineprint2 .
Depois de instalar a extensão, você só precisa digitar o comando:
fonte
Firefox Screenshots é uma nova ferramenta que acompanha o Firefox. Não é uma ferramenta de desenvolvedor, é direcionada aos usuários finais do navegador.
Para tirar uma captura de tela, clique no menu de ações da página na barra de endereço e clique em "tirar uma captura de tela". Se você clicar em "Salvar página inteira", ele salvará a página inteira, rolando para você.
(fonte: mozilla.net )
fonte
Você pode usar o selênio e o driver da web para o Firefox.
fonte