- ¿Hay alguna biblioteca que se pueda utilizar para escribir una captura de pantalla en Python.
- ¿Se puede hacer que sea multiplataforma?
- ¿Es posible capturar videos? ¿Y si pudiera ser en tiempo real?
- ¿O sería posible directamente generar películas flash?
Respuesta
No conozco ninguna biblioteca de propósito general. Hice esto para Windows y usé el código codeproject.com en una DLL, llamada desde ctypes.
La captura de video es probablemente más difícil; Tomé capturas de pantalla muy rápido utilizando el trivial proyecto de código y obtuve unos 8 fps. Si eso no es suficiente, probablemente necesite una biblioteca optimizada para su caso de uso; p.ej. tightVNC o CamStudio o algo así. CamStudio puede exportar flash y es OSS.
de captura de pantalla se puede hacer con PIL thanks to the ImageGrab module
Para la generación de películas Flash, puede echar un vistazo a ming. No estoy seguro de que tenga esta capacidad, pero vale la pena echarle un vistazo.
Una forma de capturar un video de la pantalla del usuario (sin duda para X11, no estoy seguro acerca de Windows) es usar gstreamer con el ximagesrc plugin. Hay enlaces de Python disponibles here, aunque no he usado gst-python antes. Sé que Istanbul, una aplicación de screencasting de código abierto, la usa. Ver su fuente puede ser útil.
Para capturar imágenes estáticas, he usado PyGTK antes en Linux para capturar la pantalla del usuario. Esto también debería funcionar en Windows y Mac, aunque no lo he probado. He aquí un pequeño fragmento:
import gtk
win = gtk.gdk.get_root_window()
width, height = win.get_size()
pb = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, width, height)
pb = pb.get_from_drawable(window, window.get_colormap(), 0, 0, 0, 0, width, height)
pb.save('path to file', 'png')
See the GTK docs para obtener más información.
Espero que ayude!
prueba esto también puede ser este URL puede ayudarte.
its castro !!! vea el código de ejemplo a continuación puede ser útil ....
>>> from castro import Castro
>>> c = Castro()
>>> c.start()
>>> # Do something awesome!
>>> c.stop()
He escrito una herramienta de captura de pantalla multiplataforma en wxPython. Consulte la descarga "GeneralScreenShotWX.py" en el subtema "Una aplicación de captura de pantalla flexible" en el tema "WorkingWithImages" @http://wiki.wxpython.org/WorkingWithImages#A_Flexible_Screen_Capture_App.
Está trabajando en MSW, OS X y una distribución de Linux y no requiere paquetes adicionales de wxPython.
supongo que todas las formas posibles de realizar capturas de pantalla de Python controlados están cubiertos en https://github.com/ponty/pyscreenshot
- 1. Captura de pantalla en Python - Cross Platform
- 2. Captura de pantalla Python 2+ monitores (ventanas)
- 3. ¿Cómo puedo hacer una captura de pantalla en Windows PowerShell?
- 4. Captura de pantalla de una ventana usando python
- 5. Pantalla de captura
- 6. ¿Cómo puedo tomar una captura de pantalla/imagen de un sitio web usando Python?
- 7. Captura de pantalla en android
- 8. Captura de pantalla en Haskell?
- 9. Obtener captura de pantalla en Windows con Python?
- 10. Obtenga una captura de pantalla de una página de ASP.Net
- 11. Convertir URL en captura de pantalla (script)
- 12. Captura de pantalla de la pantalla actual
- 13. Captura de pantalla de la segunda pantalla
- 14. Captura de impresiones de pantalla en Java
- 15. Tomando una captura de pantalla con C \ GTK
- 16. HTML5 video captura de pantalla
- 17. Android OpenGL Captura de pantalla
- 18. ¿Cómo puedo tomar una captura de pantalla en una aplicación de Windows?
- 19. ¿Cómo tomar una captura de pantalla de una página web?
- 20. Obtenga una captura de pantalla de una aplicación específica
- 21. Tomar una captura de pantalla parcial en el iPad
- 22. Cómo tomar una captura de pantalla en OpenGL
- 23. Tome una captura de pantalla a través de una secuencia de comandos python. [Linux]
- 24. Captura de pantalla programática en dispositivo móvil
- 25. La forma más rápida de tomar una captura de pantalla con Python en Windows
- 26. Captura de pantalla durante la prueba
- 27. Tomando captura de pantalla de una ventana específica - C++/Qt
- 28. captura de pantalla de escritorio oculto
- 29. ¿Cómo tomar la captura de pantalla programáticamente?
- 30. Tomar una captura de pantalla de área específica
PIL está muy bien, pero por desgracia el módulo ImageGrab sólo se puede utilizar en Windows, de acuerdo con sus documentos. –