Convierta HTML a PDF usando REST API en Python

Como desarrollador de Python, puede convertir fácilmente sus archivos HTML en documentos PDF mediante programación en la nube. Dicha conversión puede ser útil para mantener registros o compartir archivos HTML en un formato portátil. En este artículo, aprenderá cómo convertir documentos HTML a PDF utilizando una API REST en Python.

En este artículo se tratarán los siguientes temas:

API REST de conversión de HTML a PDF y SDK de Python

Para convertir archivos HTML a PDF, usaré la API Python SDK de GroupDocs.Conversion Cloud. Le permite convertir sus documentos e imágenes de cualquier formato de archivo compatible a cualquier formato que necesite. Puede convertir fácilmente entre más de 50 tipos de documentos e imágenes como Word, PowerPoint, Excel, PDF, HTML, CAD, imágenes rasterizadas, etc.

Puede instalar GroupDocs.Conversion Cloud en su proyecto de Python usando el siguiente comando en la consola:

pip install groupdocs_conversion_cloud

Obtenga su ID de cliente y Secreto de cliente del panel de control antes de comenzar a seguir los pasos y los ejemplos de código disponibles. Una vez que tenga su identificación y secreto, agregue el código como se muestra a continuación:

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Convierta HTML a PDF usando REST API en Python

Puede convertir su archivo HTML en documentos PDF siguiendo los sencillos pasos que se mencionan a continuación:

Sube el documento

En primer lugar, cargue el archivo HTML en la nube usando el ejemplo de código que se muestra a continuación:

# crear instancia de la API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# cargar solicitud de archivo
request = groupdocs_conversion_cloud.UploadFileRequest("sample.html", "C:\\Files\\sample.html", my_storage)

# cargar archivo de muestra
response = file_api.upload_file(request)

Como resultado, el archivo HTML cargado estará disponible en la sección de archivos de su tablero en la nube.

Convertir HTML a PDF en Python

Puede convertir fácilmente documentos HTML a PDF mediante programación siguiendo los pasos que se detallan a continuación:

  • Crear una instancia de ConvertApi
  • Cree una instancia de ConvertSettings
  • Establecer la ruta del archivo HTML
  • Asignar “pdf” al formato
  • Proporcione la ruta del archivo de salida
  • Defina PdfConvertOptions si es necesario
  • Opcionalmente, configure varias propiedades como dpi, margin\top, margin\left, fit\window, etc.
  • Crear ConvertDocumentRequest con ConvertSettings
  • Obtenga resultados llamando al método convert\document() con ConvertDocumentRequest

El siguiente ejemplo de código muestra cómo convertir su archivo HTML en un documento PDF utilizando una API REST.

# Crear las instancias de API necesarias
convertir_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Preparar la configuración de conversión
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "convertired"

# Opciones de conversión de PDF
convertirOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertirOptions.center_window = True     # Set position of the document's window on the screen
convertirOptions.display_doc_title = True
convertirOptions.dpi = 1024.0
convertirOptions.fit_window = False
convertirOptions.from_page = 1           # Start conversion from FromPage page
convertirOptions.linearize = False       # Linearize PDF Document for the Web
convertirOptions.margin_top = 5
convertirOptions.margin_left = 5
convertirOptions.unembed_fonts = True     # Make fonts not embedded
convertirOptions.remove_pdfa_compliance = False # Remove Pdf-A Compliance

settings.convertir_options = convertirOptions

# Convertir solicitud de documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# convertir
result = convertir_api.convertir_document(request)

# Hecho
print("Document convertired: " + result[0].path)
Convierta HTML a PDF usando REST API en Python

Convierta HTML a PDF usando REST API en Python

Descargar el archivo convertido

El ejemplo de código anterior guardará el archivo PDF convertido en la nube. Puede descargarlo utilizando el siguiente ejemplo de código:

# Inicialización de la API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# crear solicitud de archivo de descarga
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.pdf", my_storage)

# descargar archivo
response = file_api.download_file(request)

# Mueva el archivo descargado a su directorio de trabajo
shutil.move(response, "C:\\Files\\")

Convierta HTML a PDF y agregue una marca de agua

Puede convertir documentos HTML a PDF y agregar marcas de agua a los documentos convertidos mediante programación siguiendo los pasos que se detallan a continuación:

  • Crear una instancia de ConvertApi
  • Cree una instancia de ConvertSettings
  • Establecer la ruta del archivo HTML
  • Asignar “pdf” al formato
  • Proporcione la ruta del archivo de salida
  • Crear una instancia de WatermarkOptions
  • Establecer texto de marca de agua, color, ancho, alto, etc.
  • Defina PdfConvertOptions y asigne WatermarkOptions
  • Crear ConvertDocumentRequest con ConvertSettings
  • Convierta llamando al método convert\document() con ConvertDocumentRequest

El siguiente ejemplo de código muestra cómo convertir un archivo HTML en un documento PDF y agregar una marca de agua al documento PDF convertido mediante una API REST en Python. Siga los pasos mencionados anteriormente para cargar y descargar archivos.

# inicialización de la API
convertir_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# definir la configuración de conversión
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "convertired"

# definir opciones de marca de agua
watermark = groupdocs_conversion_cloud.WatermarkOptions()
watermark.text = "THIS IS SAMPLE WATERMARK"
watermark.bold = True;
watermark.font_size = 34;
watermark.color = "Gray";
watermark.background = False;
watermark.rotation_angle = 30;
watermark.left = 90;
watermark.top = 500;

# definir las opciones de conversión de PDF
convertirOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertirOptions.watermark_options = watermark

settings.convertir_options = convertirOptions

# crear solicitud de documento de conversión
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# convertir
result = convertir_api.convertir_document(request)
print("Document convertired successfully: " + result[0].url)
Convierta HTML a PDF y agregue una marca de agua

Convierta HTML a PDF y agregue una marca de agua

Conversión de HTML a PDF sin usar Cloud Storage

Puede convertir documentos HTML a PDF sin utilizar el almacenamiento en la nube siguiendo los pasos que se detallan a continuación:

  • Crear una instancia de ConvertApi
  • Cree ConvertDocumentDirectRequest y pase el formato del documento solicitado y la ruta del archivo de entrada
  • Obtenga resultados llamando al método convert\document\direct() con ConvertDocumentDirectRequest
  • Opcionalmente, guarde el archivo de salida en la ruta local usando el método shutil.move()

El siguiente ejemplo de código muestra cómo convertir un archivo HTML en un documento PDF sin utilizar el almacenamiento en la nube. Pasará el archivo de entrada en el cuerpo de la solicitud y recibirá el archivo de salida en la respuesta de la API.

# Crear las instancias de API necesarias
convert_api = groupdocs_conversion_cloud.ConvertirApi.from_keys(client_id, client_secret)

# Preparar solicitud
request = groupdocs_conversion_cloud.ConvertirDocumentDirectRequest("pdf", "C:\\Files\\sample.html")

# Convertir
result = convert_api.convert_document_direct(request)

# Mueva el archivo descargado a su directorio de trabajo
shutil.move(result, "C:\\Files\\")

Convierta HTML a PDF y descárguelo directamente

Puede convertir fácilmente documentos HTML a PDF mediante programación siguiendo los pasos que se detallan a continuación:

  • Crear una instancia de ConvertApi
  • Cree una instancia de ConvertSettings
  • Establecer la ruta del archivo HTML
  • Asignar “pdf” al formato
  • Establezca “Ninguno” en la ruta de salida
  • Crear ConvertDocumentRequest con ConvertSettings
  • Obtenga resultados llamando al método convert\document\download()
  • Opcionalmente, guarde el archivo de salida en la ruta local usando el método shutil.move()

El siguiente ejemplo de código muestra cómo convertir un archivo HTML en un documento PDF y descargarlo directamente usando una API REST en Python. La API devolverá el archivo PDF convertido en respuesta. Siga los pasos mencionados anteriormente para cargar un archivo.

# Crear las instancias de API necesarias
convert_api = groupdocs_conversion_cloud.ConvertirApi.from_keys(client_id, client_secret)

# Preparar la configuración de conversión
settings = groupdocs_conversion_cloud.ConvertirSettings()
settings.file_path = "sample.html"
settings.format = "pdf"

settings.output_path = None    # leave OutputPath will result the output as document IOStream

# Preparar solicitud
request = groupdocs_conversion_cloud.ConvertirDocumentRequest(settings)

# Convertir
response = convert_api.convert_document_download(request)

# Mueva el archivo descargado a su directorio de trabajo
shutil.move(response, "C:\\Files\\")

Prueba en línea

Pruebe la siguiente herramienta gratuita de conversión de HTML a PDF en línea, que se desarrolla utilizando la API anterior. https://products.groupdocs.app/conversion/html-to-pdf

Conclusión

En este artículo, aprendió cómo convertir archivos HTML a documentos PDF usando Python en la nube. También aprendió cómo convertir archivos HTML a documentos PDF sin usar el almacenamiento en la nube mediante programación. Además, aprendió cómo agregar una marca de agua a los documentos PDF convertidos usando Python. Este artículo también explicó cómo cargar mediante programación el archivo HTML a la nube y luego descargar el archivo PDF convertido desde la nube. Puede obtener más información sobre GroupDocs.Conversion Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar e interactuar con nuestras API directamente a través del navegador. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también