Como tirar uma captura de tela a cada n segundo?


16

Que software posso usar para tirar capturas de tela com um intervalo definido? Eu gostaria de tirar screenshots a cada 2 segundos ou mais. Linha de comando e GUI estão ok.

Prefiro software que também possa redimensionar e compactar cada captura de tela.


2
Boa sorte espionagem.
Oleh Prypin

Respostas:


19

Instale scrote execute o seguinte:

while true; do scrot & sleep 2; done

isso não levaria 2 segundos + o tempo que o scrot leva para ser executado?
Seppo Erviälä

11
Isso parece ter uma captura de tela a cada 2,5 segundos no meu sistema. Eu gostaria de algo mais preciso.
Seppo Erviälä

7
@ Seppo: use while true; do scrot & sleep 2; done. Vai fundo scrot(ele é executado scrot, mas não bloqueia até scrot é feito)
Lekensteyn

2
Obrigado Lekensteyn, editei minha resposta com base nisso. Não achei que alguns milissegundos fariam diferença, mas são necessários 1/2 e levaria ainda mais tempo em um disco mais lento. Há um risco aqui de que, em um disco muito lento com um intervalo de 2 segundos adequado, ele esteja constantemente gravando em disco ou, pior ainda, preenchendo todos os buffers até que o sistema seja interrompido. O @Spopo garante que o que você está fazendo tenha tempo suficiente para gravar no disco.
Oli

7
watch -n2 scrot

ou

while true; do scrot -d2; done

2
while true; do import -window root /path/to/where/you/want/to/save/`date`.png; done

11
Você precisará instalar o imagemagick para que isso funcione. Você pode adicionar um comando de suspensão ao script para fazer a captura de tela a cada 2 segundos, conforme a pergunta.
Javier Rivera

1

Conforme uma edição da sua pergunta:

import threading
    import os

    def capture(i):
        i += 1
        threading.Timer(2.0, capture, [i]).start()
        fill = str(i).zfill(5)
        os.system("scrot scrot-%s.jpg" % fill)
        os.system("streamer -o streamer-%s.jpeg -s 320x240 -j 100" % fill)

    capture(0)
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.