Saltar al contenido

Convertir docx a pdf con python puro (en linux, sin libreoffice)

Revisamos cada tutorial de nuestra página web con el objetivo de mostrarte siempre la información certera y actualizada.

Solución:

Las páginas de ayuda de PythonAnywhere ofrecen información sobre cómo trabajar con archivos PDF aquí: https://help.pythonanywhere.com/pages/PDF

Resumen: PythonAnywhere tiene instalados varios paquetes de Python para la manipulación de PDF, y uno de ellos puede hacer lo que usted quiera. Sin embargo, desembolsar a abiword me parece lo mas facil. El comando de la cáscara abiword --to=pdf filetoconvert.docx convertirá el archivo docx a un PDF y producirá un archivo llamado filetoconvert.pdf en el mismo directorio que el docx. Tenga en cuenta que este comando generará un mensaje de error en el flujo de error estándar quejándose de XDG_RUNTIME_DIR (o al menos lo hizo para mí), pero aún funciona, y el mensaje de error puede ignorarse.

Otro que podría usar es libreoffice, sin embargo, como dijo el primer respondedor, la calidad nunca será tan buena como usar los comtypes reales.

de todos modos, después de haber instalado libreoffice, aquí está el código para hacerlo.

from subprocess import  Popen
LIBRE_OFFICE = r"C:Program FilesLibreOfficeprogramsoffice.exe"

def convert_to_pdf(input_docx, out_folder):
    p = Popen([LIBRE_OFFICE, '--headless', '--convert-to', 'pdf', '--outdir',
               out_folder, input_docx])
    print([LIBRE_OFFICE, '--convert-to', 'pdf', input_docx])
    p.communicate()


sample_doc = 'file.docx'
out_folder = 'some_folder'
convert_to_pdf(sample_doc, out_folder)

Recuerda que puedes dar difusión a esta reseña si lograste el éxito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *