Python - Pegar contenido de clipboard en programa externo

   
Vista:

Pegar contenido de clipboard en programa externo

Publicado por epicteto (43 intervenciones) el 04/04/2014 20:21:26
Hola

Estoy intentando pegar el contenido del portapapeles, (que he copiado desde python) en un programa externo., concretamente en un campo de texto de un formulario.

El dato a pegar es el contenido de una variable. Lo copio en el clipboard mediante la librería GTK. También podría hacerse con el módulo os y ejecutando xsel, los dos métodos me funcionan

El codigo que uso es este:

1
2
3
4
5
6
7
import pygtk
pygtk.require('2.0')
import gtk
clipboard = gtk.clipboard_get()
variable='Texto a incluir'
clipboard.set_text(variable) # manda texto al portapapeles
clipboard.store() # hace el contenido del portapapeles accesible a otras aplicaciones aunque se termine este programa ( Teóricamente !!!!)

Mientras que ejecuto el programa he podido comprobar que el contenido del portapapeles es accesible para python y lo que envío está ahí, pero no desde otros programas. Teóricamente la última línea de código está para eso ... pero a mi no me funciona. No me da ningún error, simplemente no hace lo que debe.
Intento pegar el contenido del clipboard con el menú editar/pegar de varios programas, el click derecho del ratón o directamente ctrl+v en cualquier archivo de texto, pero no pega nada.

¿Alguien puede decirme porqué pasa esto? ¿conocéis otra manera de pasar el contenido de una variable dentro de Python al clipboard y que pueda pegarse por los métodos habituales en otro programa?

Uso Debian Wheezy y Python 2.7

Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder