222 votes

Script Python pour copier du texte dans le presse-papiers

J'ai juste besoin d'un script en python qui copie le texte dans le presse-papiers.

Après l'exécution du script, j'ai besoin que la sortie du texte soit collée à une autre source. Est-il possible d'écrire un script python qui fait ce travail ?

278voto

robert Points 10493

Voir Pyperclip. Exemple (tiré du site Pyperclip) :

import pyperclip
pyperclip.copy('The text to be copied to the clipboard.')
spam = pyperclip.paste()

Aussi, voir Xerox. Mais il semble avoir plus de dépendances.

97voto

kyle k Points 695

Sous macOS, utilisez subprocess.run pour canaliser votre texte vers pbcopy :

import subprocess 
data = "hello world"
subprocess.run("pbcopy", universal_newlines=True, input=data)

Il copiera "hello world" dans le presse-papiers.

20voto

Binyamin Points 529

Pour utiliser les répertoires Python natifs, utilisez :

import subprocess

def copy2clip(txt):
    cmd='echo '+txt.strip()+'|clip'
    return subprocess.check_call(cmd, shell=True)

sur Mac, à la place :

import subprocess

def copy2clip(txt):
    cmd='echo '+txt.strip()+'|pbcopy'
    return subprocess.check_call(cmd, shell=True)

Utilisez ensuite :

copy2clip('This is on my clipboard!')

pour appeler la fonction.

8voto

Akshay Points 385

PyQt5 :

from PyQt5.QtWidgets import QApplication
import sys

def main():
    app = QApplication(sys.argv)
    cb = QApplication.clipboard()
    cb.clear(mode=cb.Clipboard )
    cb.setText("Copy to ClipBoard", mode=cb.Clipboard)
    # Text is now already in the clipboard, no need for further actions.
    sys.exit()

if __name__ == "__main__":
    main()

6voto

moose Points 4945

GTK3 :

#!/usr/bin/python3

from gi.repository import Gtk, Gdk


class Hello(Gtk.Window):

    def __init__(self):
        super(Hello, self).__init__()
        clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)
        clipboard.set_text("hello world", -1)
        Gtk.main_quit()


def main():
    Hello()
    Gtk.main()

if __name__ == "__main__":
    main()

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X