LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

纯Python库实现上面介绍的HTML转换为PDF的软件

2023年3月8日 573点热度

将HTML网页转换为PDF是好多人常见的一个需求,在浏览器上,我们可以通过浏览器的“打印”功能直接将网页复印输出为PDF。

而且倘若有多个网页就不好办了。

二补码软件

网路上存在好多将HTML转换为PDF的软件和工具。比较知名的有Carelib、wkhtmltopdf。

whtmltopdf

wkhtmltopdf真是一个优秀的HTML转换PDF工具。其利用Qt的WebKit渲染引擎,将HTML文档渲染导入为PDF文档或图象。

linux内核网络栈源代码情景分析 pdf_linux网络内核分析与开发 pdf_linux内核源代码情景分析(下册)

功能非常健全,而且因为使用的渲染引擎是Qt的WebKit,其无法对ES6的JavaScript代码提供支持,引起一些采用ES6编撰的HTML页面渲染不出实际的疗效来,致使州的先生最终舍弃了它。

Carelib

Carelib是一个电子书管理软件,其中提供了各种文档的转换工具linux内核网络栈源代码情景分析 pdf,所以可以利用其电子书转换工具来实现HTMl到PDF的转换。

这种都是用于桌面环境的二补码软件,假如要在Python中使用,要么使用Popen()方式调用那些二补码软件的命令,要么使用一些第三方的封装模块,例如:pdfkit、pypandoc等,这种第三方模块通过集成调用上述二补码软件ubuntu linux,封装了一些便捷Python调用的插口。

纯Python库实现

前面介绍的这些Python第三方模块其实可以挺好的进行HTML到PDF的转换工作,并且都须要额外在计算机上安装其他的二补码软件,好多男子伴并不喜欢这些调用方法。

不依赖于二补码软件的实现,有如下的方案:

xhtml2pdf

这是一个基于ReportLab、html5lib、PyPDF2等Python模块建立的HTML到PDF转换模块。才能挺好的支持HTML5、CSS2.1和部份CSS3句型。

由于是基于ReportLab模块进行的开发,其对英文的支持在个别环境下会有问题。并且因为开发人员的变更,模块的功能出现了一些断层。并且一直是一个极其棒的HTML转PDF模块。

weasyprint

这是一个用于HTML和CSS的可视化渲染引擎linux内核网络栈源代码情景分析 pdf,可以将HTML文档导入为复印标准的PDF文件。

linux网络内核分析与开发 pdf_linux内核源代码情景分析(下册)_linux内核网络栈源代码情景分析 pdf

xhtml2pdf模块也曾推荐使用这个模块来进行HTML转换PDF的工作。

这个模块功能很强悍、效果很出众,而且,模块的依赖项太多了:

州的先生至今没有在Windows笔记本上安装成功过!

浏览器方案

在上述两种方案中,二补码程序的可控制性稍有不足什么是linux,而纯Python实现的渲染解析则在功能上和依赖上不是有友好。

linux网络内核分析与开发 pdf_linux内核源代码情景分析(下册)_linux内核网络栈源代码情景分析 pdf

处理上述两种方案,我们能够采用第三种方法进行HTMl到PDF的转换。那就是利用Web手动化测试的浏览器内核和QtforPython的Web引擎来实现。

Web手动化的浏览器内核

使用Python的男子伴常常会使用Selenium、pyppeteer这两个Web手动化测试的模块来进行数据采集和Web手动化测试工作。

这两个模块都是拿来驱动一个真实的浏览器来进行网页的操作。正是基于此,我们可以调用浏览器中复印相关的API插口,来实现HTML转PDF的功能。

比如,在pyppeteer中可以根据下边示例的方法,打开一个HTML文档,之后将其转换为PDF文档:

linux网络内核分析与开发 pdf_linux内核网络栈源代码情景分析 pdf_linux内核源代码情景分析(下册)

Qt的Web引擎

在Qt5中,Qt使用新的Chromium内核取代了老旧的WebKit作为Web的渲染引擎。促使在Qt中进行可以现代化的浏览器开发。

利用于Qt的Python实现(PyQt5系列和PySide2系列),我们可以直接调用Qt中的Web引擎相关的插口。

其中QtWebEngineWidgets子模块中的QWebEngineView()类提供了printToPdf方式供我们将网页复印为PDF文档,所以基于此,我们也可以使用PyQt5或PySide2进行HTML转换PDF,示例如下所示:

linux内核源代码情景分析(下册)_linux网络内核分析与开发 pdf_linux内核网络栈源代码情景分析 pdf

最后

在里面,州的先生介绍了3种在Python中转换HTML文档为PDF文档的方案,每种方案都有各自的优势和不足,正确地评估自己的需求之后选择合适的方案,也能填补其不足。

以上就是python将html转换为pdf的几种方式的详尽内容,更多关于python将html转换为pdf的资料请关注我们其它相关文章!

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: html代码 pdf python 二进制 软件
最后更新:2023年3月8日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
VMware过期Linux系统CentOS7下载安装1.77下载地址 红旗linux操作系统v11.0-红旗操作系统操作系统吗? 5yw红软基地驱动完美支持windows、mac、linux系统 轻松安装ZeroMQ:Ubuntu系统必备的解决方案 怎么在Win7系统虚拟机上安装LinuxUbuntu的技巧?在这里 Linux必备!安装RAR解压器,轻松解压文件! 虚拟机linux系统下载 什么是linuxLinux(/托瓦兹)的Linux内核 文件永久删除还能找回来吗?关于Win和Mac系统的恢复方法 Ubuntu16.04怎样安装系统更新和应用更新16.04 网卡 centos 启动 Linux选择选择时各企业所参考的依据:以下内容和Centos Linux内核内存检测工具系列中的一篇,配置以及典型应用 虚拟机安装Ubuntu操作系统-Ubuntu空间20G镜像下载 0渗透操作0x02绕过disable_functions插件(组图) 【好玩的网络-第2.5期】分配IP有哪些骚操作?小白保姆级教程 Windows远程连接工具、Ubuntu系统的安装软件及系统 Linux一模一样远程连接编辑的操作图是什么? DRAM中的虚拟地址空间的缓存简化内存管理(组图) 2.5创建和配置虚拟机2.5.1创建虚拟机双击桌面的VMwarePlayer 掌握Linux基础命令-上海怡健医学系统 服务器上安装linux系统的具体操作过程-如何选择系统?
Linux文件路径查询方法,轻松获取文件位置Linux移植6410:从零开始的挑战!linux php安装 快速掌握Linux下PHP安装,轻松入门流行技术linux patch 文件 解决LinuxPatch文件10大疑难杂症,轻松应对!Ubuntu系统更改IP地址的简易教程,跟随以下步骤即可搞定!高效搭建Linux Android开发环境,轻松提升开发体验轻松掌握:如何查询Linux内核版本?Linux安装Matlab指南,快速掌握安装步骤Ubuntu 16安装网卡驱动教程,轻松解决网络连接问题Linux启动时,不使用图形界面可能更有效率!移植Linux,手机变身“大杀器”!详解8大关键操作Linux更高效,掌握启动终端快捷键!纯Python库实现上面介绍的HTML转换为PDF的软件Fedora 13服务器配置指南:9个实用技巧全解析9种方法轻松获取Linux版本,快速掌握系统信息!博客韦东山freeRTOS系列教程:入门文档教程+进阶视频教程轻松掌握linux ldd命令的技巧,成为高效开发者与管理员Linux VPS安全检测,保障服务器稳定运行!Linux下高效开发必备:配置Tomcat和JDK分析Linux中的I2C驱动程序框架核心结构(i2c-bus结构)
Linux内核载入到内存的分为步骤是怎样的?? 嵌入式linux系统开发培训-C编程以及C++Linux应用开发 Linux账号密码过期导致无法登录CentOS7模式重置root用户密码 Linux版本(1)RedHatLinux内核0.02版正式诞生 如何远程连接服务器桌面?如何保证在ssh故障情况下还能够访问到服务器? 【好玩的网络-第2.5期】分配IP有哪些骚操作?小白保姆级教程 Linux查看系统和内核版本在不同系统的一些命令表现 渗透测试最重要的阶段之一DNS枚举工具 UNIX网络编程卷1:套接字联网API第3版pdf百度网盘下载地址 开源软件安装源码包的方式安装软件 Linux内核启动注册中断内核中断源如何实现多个定时器 Linux系统服务器的搭建方法-上海怡健医学 一下美国Linux服务器的系统优化优化方法方法 老男孩教育怎么样有哪些课程?-八维教育 Linux下的开机启动设置方法是什么?脚本或服务 如何不重新编译整个内核支持某个功能,对系统无影响编译 如何本地运行远程系统上运行命令或程序(组图) 服务器上安装linux系统的具体操作过程-如何选择系统? 无窗口的Python可执行程序(图)命令(组图) virtualbox安装virtualbox增强功能,虚拟机下载
标签聚合
文件目录 linux脚本 电脑 命令模式 sudo linux系统 linux服务器 虚拟机 命令 软件
书籍
课程
技术群
技术干货大合集↓
  • 2023年3月 / 112篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.