Python - Abrir PDF con aplicacion predeterminada

   
Vista:

Abrir PDF con aplicacion predeterminada

Publicado por luclinux (26 intervenciones) el 06/08/2013 17:32:22
Muy buenas a todos,

Soy programador y estoy empezando en Python.

Hay algo que se me está resistiendo y no encuentro solución:

Estoy elaborando una aplicación (en Python 2.7 sobre Linux) la cual, en un momento dado, recupera un PDF guardado en una bd MySQL.

El PDF está bien guardado, en un campo LongBlob. Lo recupero perfectamente con la consulta SQL y esto:

data = cursor.fetchone()[0]

#Este de aqui abajo te genera el pdf
fout = open('salida.pdf', 'wb')
fout.write (data)

Esto genera el PDF, y lo guarda en la ruta de la aplicación. Pero lo que yo quiero, no es crear una copia del documento, sino abrirlo directamente con el visor predeterminado (en Windows he leido sobre el os.startfile, en Linux no he visto nada) y no sé como hacerlo.

Agradeceria cualquier tipo de ayuda.

Un saludo.
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
Imágen de perfil de xve

Abrir PDF con aplicacion predeterminada

Publicado por xve (1229 intervenciones) el 06/08/2013 20:55:40
Hola, creo que lo que necesitas ejecutar es un subproceso...
http://docs.python.org/2/library/subprocess.html

No si si ejecutandolo directamente con os.system y añadir el & al final te funcionaria... algo así:
1
os.system("okular file.pdf &")


coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Abrir PDF con aplicacion predeterminada

Publicado por luclinux (26 intervenciones) el 06/08/2013 20:59:21
Gracias!!!

Ha funcionado perfectamente como tu decías:

os.system("evince salida.pdf &")


Muchas gracias por la ayuda y la molestia.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Abrir PDF con aplicacion predeterminada

Publicado por luclinux (26 intervenciones) el 09/08/2013 12:29:51
Par completar el hilo, la instrucción para Windows y Adobe Reader (que suele ser común) es la siguiente:

os.system("start AcroRD32 archivo.pdf &")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar