答案 0 :(得分:3)
屏幕截图可以使用PIL thanks to the ImageGrab module
完成要生成Flash电影,您可以查看ming。我不确定它是否具备此功能,但值得一看。
答案 1 :(得分:3)
你也可以尝试一下 可能是这个URL可以帮助你。
它的卡斯特罗!看下面的示例代码可能很有用....
>>> from castro import Castro
>>> c = Castro()
>>> c.start()
>>> # Do something awesome!
>>> c.stop()
答案 2 :(得分:2)
我不知道任何通用库。我为Windows做了这个,并在DLL中使用了一些codeproject.com代码,从ctypes调用。
视频捕捉可能更难;我使用简单的codeproject方法快速截取屏幕截图并获得了8fps。如果这还不够,您可能需要一个针对您的用例进行优化的库;例如tightVNC或CamStudio或其他内容。 CamStudio可以导出闪存并且是OSS。
答案 3 :(得分:2)
我在wxPython中编写了一个跨平台的屏幕捕获工具。 请参阅子主题“灵活的屏幕捕获应用程序”中的“GeneralScreenShotWX.py”下载 在主题“WorkingWithImages”下 @ http://wiki.wxpython.org/WorkingWithImages#A_Flexible_Screen_Capture_App。
它正在使用MSW,OS X和一个Linux发行版,不需要额外的wxPython包。
答案 4 :(得分:1)
捕获用户屏幕视频的一种方法(当然是X11,不确定Windows)是使用gstreamer和ximagesrc plugin。有可用的Python绑定here,虽然我之前没有使用过gst-python。我知道Istanbul,一个开源的截屏视频应用程序,使用它 - 查看它的来源可能会对你有所帮助。
为了捕获静态图像,我之前在Linux上使用过PyGTK来捕获用户的屏幕。这应该适用于Windows和Mac,虽然我没有尝试过。这是一个小片段:
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了解更多信息。
希望有所帮助!
答案 5 :(得分:0)
我想所有采用Python控制截图的方法都在https://github.com/ponty/pyscreenshot
中介绍