PyGTK + 3 (PyGObject) para crear captura de pantalla?

He pasado los últimos 3 días buscando en google, ¿cómo puedo crear una captura de pantalla con PyGTK + 3? Hay tutoriales de gallizion sobre pyqt, pygtk + 2, wx y PIL.

Por cierto, no necesito progtwigs externos como scrot, imlib2, imagemgick, etc.

Como nadie más publicó la traducción a GTK3, aquí tienes:

from gi.repository import Gdk win = Gdk.get_default_root_window() h = win.get_height() w = win.get_width() print ("The size of the window is %dx %d" % (w, h)) pb = Gdk.pixbuf_get_from_window(win, 0, 0, w, h) if (pb != None): pb.savev("screenshot.png","png", (), ()) print("Screenshot saved to screenshot.png.") else: print("Unable to get the screenshot.") 

Mejor tarde que nunca. Me quedé atascado con get_from_drawable () pero más tarde encontré la documentación sobre su desaprobación.

 from gi.repository import Gdk window = Gdk.get_default_root_window() x, y, width, height = window.get_geometry() print("The size of the root window is {} x {}".format(width, height)) # get_from_drawable() was deprecated. See: # https://developer.gnome.org/gtk3/stable/ch24s02.html#id-1.6.3.4.7 pb = Gdk.pixbuf_get_from_window(window, x, y, width, height) if pb: pb.savev("screenshot.png", "png", (), ()) print("Screenshot saved to screenshot.png.") else: print("Unable to get the screenshot.")