¿Cómo tomar una captura de pantalla cada segundo?

16

¿Qué software puedo usar para tomar capturas de pantalla con un intervalo establecido? Me gustaría tomar capturas de pantalla cada 2 segundos más o menos. La línea de comandos y la GUI están bien.

Prefiero un software que también puede cambiar el tamaño y comprimir cada captura de pantalla.

Seppo Erviälä
fuente
2
Buena suerte espiando.
Oleh Prypin

Respuestas:

19

Instale scroty luego ejecute esto:

while true; do scrot & sleep 2; done
Oli
fuente
¿no tomaría eso 2 segundos + tiempo para que se ejecute el scrot?
Seppo Erviälä
1
Esto parece tomar una captura de pantalla cada 2,5 segundos en mi sistema. Me gustaría algo más preciso.
Seppo Erviälä
77
@Seppo: uso while true; do scrot & sleep 2; done. Se scrotejecutará en segundo plano (ejecuta scrot, pero no se bloquea hasta que finalice el examen)
Lekensteyn
2
Gracias Lekensteyn, edité mi respuesta en base a eso. No pensé que unos pocos milisegundos harían la diferencia, pero toma 1/2 y tardaría aún más en un disco más lento. Aquí existe el riesgo de que en un disco muy lento con un espacio de 2 segundos adecuado, estaría escribiendo constantemente en el disco o, lo que es peor, llenaría todas las memorias intermedias hasta que el sistema se detuviera. @Seppo asegúrate de que lo que sea que estés haciendo tenga tiempo suficiente para escribir en el disco.
Oli
7
watch -n2 scrot

o

while true; do scrot -d2; done
lukasz
fuente
2
while true; do import -window root /path/to/where/you/want/to/save/`date`.png; done
Markuz
fuente
1
Deberá instalar imagemagick para que esto funcione. Puede agregar un comando de suspensión al script para que tome la captura de pantalla cada 2 segundos, como se hace en la pregunta.
Javier Rivera
1

Según una edición de su pregunta:

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)
jrg
fuente