Библиотека преобразования HTML в PDF с открытым исходным кодом на Python
Попробуйте этот бесплатный и открытый исходный код Python API в качестве библиотеки преобразования HTML в PDF.
Что такое WeasyPrint?
WeasyPrint — это библиотека Python с открытым исходным кодом и инструмент командной строки, который преобразует файлы HTML и CSS в документы PDF с высококачественным рендерингом, что делает его универсальным инструментом для создания PDF-файлов из веб-контента. WeasyPrint позволяет преобразовывать встроенный код HTML, локальные файлы HTML и веб-URL-адреса в документы PDF с помощью одной строки кода.
Ниже приведен краткий список функций, поддерживаемых WeasyPrint:
- WeasyPrint поддерживает многие спецификации CSS, написанные W3C.
- Он обеспечивает комплексную поддержку URL-адресов, HTML и поддерживаемых HTML-тегов.
- WeasyPrint может обрабатывать внешние ресурсы, такие как изображения или таблицы стилей CSS, с помощью URL-извлекателя.
- Стандартный сборщик может открывать файлы и HTTP-URL-адреса.
- Он поддерживает различные функции, связанные с созданием PDF-файлов, включая шрифты, CSS, CSS Level 2 Revision 1, селекторы Level 3/4 и CSS Text.
Начало работы с WeasyPrint
Вам понадобится Python версии 3.7.0 или выше для установки и использования WeasyPrint. Поэтому сначала установите Python, а затем используйте следующие команды для установки WeasyPrint на свой компьютер с помощью pip и виртуальной среды:
Установить на Linux
python3 -m venv venv
source venv/bin/activate
pip install weasyprint
weasyprint --info
Установить на Ubuntu 20.04 или выше
apt install python3-pip libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 libffi-dev libjpeg-dev libopenjp2-7-dev
Установка на MacOS с помощью Homebrew
brew install weasyprint
Установить на Windows 11 64-бит
python3 -m venv venv
venv\Scripts\activate.bat
python3 -m pip install weasyprint
python3 -m weasyprint --info
Примечание: для установки в Windows установите GTK3 перед запуском вышеуказанных команд.
Конвертировать HTML в PDF через веб-URL
Мы можем преобразовать любую HTML веб-страницу в PDF с помощью одной строки кода, используя библиотеку WeasyPrint Python. Нам просто нужно импортировать класс HTML из библиотеки, создать объект класса HTML с URL-адресом веб-сайта и вызвать метод write_pdf, чтобы преобразовать его в PDF-документ с желаемым именем.
Конвертируйте HTML в PDF через веб-URL с помощью встроенного CSS
Мы также можем преобразовать URL-адрес веб-сайта в PDF-файл со встроенной таблицей стилей, используя библиотеку WeasyPrint.
Заключение
WeasyPrint — это простая в использовании бесплатная библиотека Python с открытым исходным кодом, которая преобразует HTML и CSS в документы PDF. Вы можете создавать шаблоны на основе HTML для требуемых документов, а затем быстро экспортировать их в PDF. WeasyPrint предоставляет разработчикам гибкие возможности преобразования, позволяя им преобразовывать HTML в PDF из URL-адреса веб-сайта, локального файла HTML, строки, содержащей код HTML и файловый объект и т. д.
Даже WeasyPrint является отличным бесплатным вариантом преобразования HTML в PDF-документы для разработчиков Python, хотя в случае сложной структуры HTML и CSS сгенерированные PDF-документы могут отображаться не с высокой точностью, что может создать проблемы для пользователей со строгими требованиями.