Maison  >  Article  >  développement back-end  >  Comment capturer des captures d’écran sous Linux à l’aide de Python ?

Comment capturer des captures d’écran sous Linux à l’aide de Python ?

DDD
DDDoriginal
2024-11-02 11:37:03264parcourir

How to Capture Screenshots in Linux Using Python?

Comment capturer des captures d'écran à l'aide de Python sous Linux

Lorsque vous devez capturer discrètement des captures d'écran à des fins d'automatisation ou de documentation, en utilisant Python sur un système Linux est une solution efficace. Voici comment procéder :

Comprendre la tâche

Le but est de créer un script Python capable de prendre des captures d'écran et de les enregistrer sans aucune interface utilisateur visible. (GUI).

Exploiter GTK pour la capture d'écran

Pour y parvenir, nous exploiterons la puissance de GTK (GIMP Toolkit), un outil multiplateforme bibliothèque graphique couramment utilisée dans les environnements Linux. GTK donne accès à la pile graphique sous-jacente, nous permettant d'effectuer des tâches telles que la capture d'écran.

Plongée dans le code Python

Voici un Python concis et robuste script qui utilise GTK pour la capture d'écran :

<code class="python">import gtk.gdk

# Get the default root window
w = gtk.gdk.get_default_root_window()

# Determine the screen size
sz = w.get_size()

# Create a pixbuf object
pb = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, False, 8, sz[0], sz[1])

# Capture the window screenshot
pb = pb.get_from_drawable(w, w.get_colormap(), 0, 0, 0, 0, sz[0], sz[1])

if pb:
    # Save the screenshot as a PNG file
    pb.save("screenshot.png", "png")
    print("Screenshot saved to screenshot.png.")
else:
    print("Unable to get the screenshot.")</code>

Points clés

  • Aucune dépendance externe : Ce script ne nécessitent des outils supplémentaires comme scrot ou ImageMagick, ce qui en fait une solution autonome.
  • Compatibilité multiplateforme : GTK garantit que le script fonctionne dans divers environnements Linux basés sur X.
  • Fonctionnement discret : La capture d'écran est capturée de manière transparente, sans aucune interaction visible avec l'interface graphique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn