用 Python 将 html 转为 pdf、word

简介: 在日常中有时需将 html 文件转换为 pdf、word 文件。网上免费的大多数不支持多个文件转换的情况,而且在转换几个后就开始收费了。

转 pdf

转 pdf 中使用 pdfkit 库,它可以让 web 网页直接转为 pdf 文件,多个 url 可以合并成一个文件。

安装 pdfkit 库

pip3 install pdfkit

安装 wkhtmltopdf 文件

pdfkit 是基于 wkhtmltopdf 的 python 封装库,所以需要安装 wkhtmltopdf 软件。

下载地址:https://wkhtmltopdf.org/downloads.html

53.jpg在windows 系统中,需要将 wkhtmltopdf.exe 文件路径配置在系统环境变量中。

url 生成 pdf

这里使用 baidu 首页和 bing 首页作为示例

import pdfkit
# 第一个参数可以是列表,放入多个域名,第二个参数是生成的 PDF 名称
pdfkit.from_url(['www.baidu.com','www.bing.com'],'search.pdf')

55.jpg


本地 html 文件生成 pdf

提前将需要转换的 html 存储到本地,也可以使用 python 爬虫代码抓取 html 文件到本地。

import pdfkit
pdfkit.from_file('/Users/xx/Desktop/html/baidu.html', 'search.pdf')

转 word

使用 pypandoc 库将 html 转换为 word 文件,pypandoc 是一个支持多种文件格式转换的 Python 库,它用到了 pandoc 软件,所以需要在电脑上安装 pandoc 软件

安装 pypandoc 库

pip install pypandoc

安装 pandoc 软件

pypandoc 是基于 pandoc 软件的库,所以要安装一下 pandoc (https://github.com/jgm/pandoc/releases/tag/2.11.4),pandoc 支持多种类型转换。下图是 pandoc 的转换类型。


56.jpg

使用

将 html 文件提前存储在本地,也可以用爬虫将需要转换的 html 文件在代码中抓取后使用。

import pypandoc
# convert_file('原文件','目标格式','目标文件')
output = pypandoc.convert_file('/Users/xx/Desktop/html/baidu.html', 'docx', outputfile="baidu.doc")

pypandoc 无法对 word 进行排版,所以需要小伙伴们进行 2 次排版。

57.jpg

总结

利用好 Python 第三方库类,可以为小伙伴写出各种个性化定制的小程序

目录
相关文章
|
数据采集 存储 搜索推荐
用 Python 将 html 转为 pdf、word
在日常中有时需将 html 文件转换为 pdf、word 文件。网上免费的大多数不支持多个文件转换的情况,而且在转换几个后就开始收费了。
1244 0
用 Python 将 html 转为 pdf、word
|
6月前
|
Python
Python 将PowerPoint (PPT/PPTX) 转为HTML
使用Python将PowerPoint转换为HTML以适应网络分享。需安装`Spire.Presentation for Python`库,通过`pip install Spire.Presentation`。示例包括:1) 全部转换,使用`Presentation.SaveToFile()`方法;2) 转换特定幻灯片,通过`Presentation.Slides[]`获取幻灯片再保存。代码示例展示了具体操作步骤。
105 6
|
3月前
|
Python
Python 下载 html 中的 图片
Python 下载 html 中的 图片
31 2
|
6月前
|
数据采集 数据挖掘 Python
Python之html2text: 将HTML转换为Markdown 文档示例详解
Python之html2text: 将HTML转换为Markdown 文档示例详解
501 0
|
6月前
|
前端开发 文件存储 Python
python之xhtml2pdf: HTML转PDF工具示例详解
python之xhtml2pdf: HTML转PDF工具示例详解
478 0
|
6月前
|
Python
python html(文件/url/html字符串)转pdf
python html(文件/url/html字符串)转pdf
52 0
|
Linux Python
Python编程:使用wkhtmltopdf将html网页转成pdf文件
Python编程:使用wkhtmltopdf将html网页转成pdf文件
184 0
Python编程:使用wkhtmltopdf将html网页转成pdf文件
|
前端开发 Java Python
python html转png
日常开发过程中,html可以画出非常好看的效果图,但是很多第三方工具并不支持直接展示html,这就需要通过一些第三方工具将html转换为png。很多第三方jar包在做转换的时候,经常出现转化后因为部分css标签不支持,图片效果错位的情况。本文演示一种python html2image包转换图片的案例。
5472 1
python html转png
|
Python
使用python-docx-template操作word文档
1.python-docx-template简介 我们知道可以使用python-docx库来创建word文档,但是对于文档的修改功能,还可以使用另一个库 python-docx-template 可以完成对word的修改工作。 python-docx-template 模块主要依赖两个库, python-docx用于读取,编写和创建子文档 , jinja2用于管理插入到模板docx中的标签 。 其基本思路是利用jinja2制作Word模板,并动态向模板中插入文字、图片、表格等内容。 安装所需要的库文件🙌
754 0
使用python-docx-template操作word文档