Python 将HTML转为PDF、图片、XML、XPS格式

网页内容是信息传播的主要形式之一。在Web开发中,有时候我们需要将HTML文件以不同的格式保存或分享,比如PDF、图片(如PNG或JPEG)、XML或XPS等。这些格式各有优势,适合不同的用途。在这篇文章中,我们将介绍如何使用 Spire.Doc for Python 库实现在Python中将HTML文档转换为这些格式。

1. Python 将HTML转为PDF

2. Python 将HTML转为JPG/PNG图片

3. Python 将HTML转为XML

4. Python 将HTML转为XPS


安装Spire.Doc for Python:

pip install Spire.Doc

Spire.Doc for Python 是一个基于Python语言的文档处理库, 提供了丰富的API来帮助开发者轻松地读取、写入、修改和创建Word文档。我们可以使用它提供的 LoadFromFile(fileName: string, FileFormat.Html, XHTMLValidationType.none) 方法加载HTML文件,然后再使用SaveToFile(fileName: string, fileFormat: FileFormat) 将其转换为指定的文件格式。转换HTML为图片则需要使用SaveImageToStreams()方法。示例代码如下:

1. Python 将HTML转为PDF

from spire.doc import *
from spire.doc.common import *

# 加载HTML文件
document = Document()
document.LoadFromFile("测试.html", FileFormat.Html, XHTMLValidationType.none)

# 将HTML文件另存为PDF格式
document.SaveToFile("Html转Pdf.pdf", FileFormat.PDF)
document.Close()

2. Python 将HTML转为JPG/PNG图片

from spire.doc import *
from spire.doc.common import *
import io

inputFile = "Template.html"
outputFile = "HtmlToImage.png"

# 加载HTML文件
document = Document()
document.LoadFromFile(inputFile, FileFormat.Html, XHTMLValidationType.none)

# 将HTML文件另存为图片流
imageStream = document.SaveImageToStreams(0, ImageType.Bitmap)

# 将图片流保存为指定的图片格式
with open(outputFile,'wb') as imageFile:
    imageFile.write(imageStream.ToArray())
document.Close()

3. Python HTML转为XML

from spire.doc import *
from spire.doc.common import *
        
# 加载HTML文件
document = Document()
document.LoadFromFile("测试.html")

# 将HTML文件另存为XML格式
document.SaveToFile("Html转Xml.xml", FileFormat.Xml)
document.Close()

4. Python HTML转为XPS

from spire.doc import *
from spire.doc.common import *

# 加载HTML文件
document = Document()
document.LoadFromFile("测试.html", FileFormat.Html, XHTMLValidationType.none)

# 将HTML文件另存为XPS格式
document.SaveToFile("Html转Xps.xps", FileFormat.XPS)
document.Close()

以上示例展示了如何使用PythonHTML转换为PDF、图片、XMLXPS等格式的基本方法。如果需要将HTML转换为Word文档可参考:

Python 将 HTML 转为 Word本文将介绍如何使用Python将 HTML 文件转换为 Word格式或将HTML 字符串导出到 Word文档。icon-default.png?t=N7T8https://www.e-iceblue.cn/doc_python_conversion/python-convert-html-to-word.html其余功能示例:

Spire.Doc for Python 中文教程Spire.Doc for Python 是一款专业的 Python Word 开发组件,开发人员可以使用它轻松将 Word 文档的创建、读取、编辑和转换等功能集成到自己的 Python 应用程序中。作为一款完全独立的组件,Spire.Doc for Python 的运行环境无需安装 Microso...icon-default.png?t=N7T8https://www.e-iceblue.cn/docforpython/spire-doc-for-python-program-guide-content.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/478582.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

GPU 使用率监测及可视化

1. 使用 nvidia-smi可视化 直接在终端输入nvidia-smi动态查看GPU的使用情况watch -n 0.5 nvidia-smi其中0.5表示每隔0.5秒更新一次,时间可以调整 2. 使用nvitop可视化 2.1 nvitop的使用 (1) 安装 pip install nvitop(2) 查看GPU使用率 nvitop

【LAMMPS学习】三、构建LAMMPS(11)开发构建选项

3. 构建 LAMMPS 3.11.开发构建选项 LAMMPS 中的构建过程提供了一些在开发、测试或调试期间有用的额外选项。 3.11.1.监视编译标志(仅限 CMake) 有时需要验证 CMake 构建生成的编译标志的完整序列。要在编译期间启用更详细的输出,可以使用…

DenseNet《Densely Connected Convolutional Networks》

DenseNet学习笔记 摘要引言DenseNetsResNetsDense connectivityResNet 和 DenseNet 的对比DenseBlock 向前传播的过程Composite functionPooling layersGrowth rateBottleneck layersCompression 压缩实现细节 实验训练 代码复现 摘要 最近的研究表明,如果卷积网络…

鸿蒙Harmony应用开发—ArkTS-全局UI方法(自定义组件的生命周期)

自定义组件的生命周期回调函数用于通知用户该自定义组件的生命周期,这些回调函数是私有的,在运行时由开发框架在特定的时间进行调用,不能从应用程序中手动调用这些回调函数。 说明: 本模块首批接口从API version 7开始支持&#x…

c语言(动态内存管理函数)

1. 为什么要有动态内存分配 我们已经掌握的内存开辟⽅式有: int arr[10] {0}; char a; 但是上述的开辟空间的⽅式有两个特点: 但是上述的开辟空间的⽅式有两个特点: • 空间开辟⼤⼩是固定的。 • 数组在申明的时候,必须指…

php 对接Mintegral汇量海外广告平台收益接口Reporting API

今天对接的是Mintegral广告reporting api接口,拉取广告收益回来自己做统计。记录分享给大家 首先是文档地址,进入到Mintegral后台就能看到文档地址以及参数: 文档地址:https://cdn-adn-https.rayjump.com/cdn-adn/reporting_api/MintegralRA.…

Java基于微信小程序的二手交易系统的实现(V2.0)

博主介绍:✌Java徐师兄、7年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、Python 技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅&#…

C++初阶:string类相关练习题

目录 1. 字符串相加2. 反转字母3. 字符串中唯一字母4. 字符串中最后一个单词5. 验证回文串6. 反转字符II7. 反转字符串中的单词8. 字符串相乘 1. 字符串相加 题目信息: 题目连接: 字符串相加 class Solution { public:string addStrings(string num1, s…

Ubuntu24.04即将发布,支持Linux内核6.8。该版本会有哪些亮点?

更多内容在 Canonical 计划 2024 年 4 月发布 Ubuntu 24.04 LTS 发行版,将获得长达 12 年的支持。Ubuntu 24.04 LTS,代号“Noble Numbat”,是Ubuntu发行版的最新长期支持(LTS)版本。12年的支持意味着你会得到 五年的维…

谷歌DeepMind推出3D游戏AI代理SIMA,实现自然语言操控游戏新纪元

近日,谷歌DeepMind研究团队推出了一款名为SIMA的创新AI代理,专为3D游戏环境设计。这款代理独树一帜,无需访问游戏源代码或依赖定制API,仅通过输入图像和简单的自然语言文本指令,便能实现与人类玩家相当的游戏操作。 AI…

C++有关内存的那些事

个人主页:PingdiGuo_guo 收录转栏:C干货专栏 前言 本篇博客是讲解关于C内存的一些知识点的。 文章目录 前言 1.内存函数 1.1memcpy函数 1.2memmove函数 1.3 memset函数 2.各数据类型占用 2.1bool类型 2.2char类型 2.3short、int、long类型及整数…

计算机硕士,毕业直接后端开发岗,选择C++还是java?

我自己是一名工作多年的C程序员,大学学习的编程语言就是C/C,参加工作后自学了Python、Java、Golang等语言。 现在从事自动驾驶行业的工作,工作中主要使用的编程语言是C和Python。在开始前我有一些资料,是我根据网友给的问题精心整…

canopen使用

CAN 总线协议 1)、启动SDO 下载协议 ccs:客户端 指定命令 1:开始下载请求 •scs:服务器命令符 3:开始下载响应 •n:只有当e 1和s1,否则为0。如果有效则表示字节在d不这样做的数量有效包…

外包干了20天,技术退步明显.......

先说一下自己的情况,大专生,21年通过校招进入杭州某软件公司,干了接近2年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了2年的功能测试…

3个好用的WP免费主题

免费wordpress模板下载 高端大气上档次的免费wordpress主题,首页大图全屏显示经典风格的wordpress主题。 https://www.wpniu.com/themes/289.html 经典的红色免费wordpress主题 这是一款经典的免费wordpress主题,被广泛应用于多个行业的网站。 https…

SQL:窗口函数之OVER()

窗口函数 通用格式 “函数 OVER (PARTITION BY 分组 ORDER BY 排序依据 升降序)”。 这里记录下OVER() 以及搭配LEAD/LAG函数的使用方法(执行平台Impala) 目录 OVER函数1、不加条件的OVER函数——得到所有的汇总结果2、仅有排序的OVER函数——得到按顺序…

HAL库W25Q16+fatfs文件系统移植

配置时钟树 配置时钟树时钟频率为72 SPI1外挂SPIflash 其他不用改这里挂的是一个W25Q16 文件分类管理 生成原始代码 加入W25Q16的驱动代码 忘记配片选线了,这里加上 /*Configure GPIO pin : PtPin */GPIO_InitStruct.Pin GPIO_PIN_4;GPIO_InitStruct.Mode GPIO_…

《由浅入深学习SAP财务》:第2章 总账模块 - 2.5 科目余额查询理

SAP提供了强大的科目余额查询功能,可以查询科目的借贷方及余额,同时,也可以追溯到明细凭证。在凭证记账后,科目的余额就会同步得到更新。预制凭证是不更新科目余额的。 科目余额查询及追溯的操作步骤 路径:SAP菜单&g…

我的春招求职面经

智能指针在面试时经常被问到,最近自己也在写,有一点思考,于是找到了这样一个题目,可以看看,上面这个代码有什么问题?留言区说出你的答案吧! 最后分享一下之前的实习->春招->秋招等文章汇总…

atomgit访问令牌就创建的时候显示一下

AtomGit 是开放原子开源基金会提供的代码托管平台,帮助团队更快、更安全地交付更好的软件。 在创建访问令牌的时候,发现创建之后点不出来令牌字段,不像其它网站会在令牌列表那里显示出来。在“我的令牌”页面只能看到令牌名字和权限&#xff…