Skip to main content

Simple python wrapper to convert HTML to PDF with headless Chrome via selenium.

Project description

pyhtml2pdf

Simple python wrapper to convert HTML to PDF with headless Chrome via selenium.

Install

pip install pyhtml2pdf

Dependencies

Example

Convert to PDF

Use with website url

from pyhtml2pdf import converter

converter.convert('https://pypi.org', 'sample.pdf')

Use with html file from local machine

import os
from pyhtml2pdf import converter

path = os.path.abspath('index.html')
converter.convert(f'file:///{path}', 'sample.pdf')

Some JS objects may have animations or take a some time to render. You can set a time out in order to help render those objects. You can set timeout in seconds

converter.convert(source, target, timeout=2)

Compress the converted PDF

Some PDFs may be oversized. So there is a built in PDF compression feature.

The power of the compression,

  • 0: default
  • 1: prepress
  • 2: printer
  • 3: ebook
  • 4: screen
converter.convert(source, target, compress=True, power=0)

Pass Print Options

You can use print options mentioned here

converter.convert( f"file:///{path}", f"sample.pdf", print_options={"scale": 0.95} )

Compress PDF

Use it to compress a PDF file from local machine

import os
from pyhtml2pdf import compressor

compressor.compress('sample.pdf', 'compressed_sample.pdf')

Inspired the works from,

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyhtml2pdf-0.0.7.tar.gz (4.5 kB view hashes)

Uploaded Source

Built Distribution

pyhtml2pdf-0.0.7-py3-none-any.whl (5.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page