当前位置: 首页 > news >正文

【python】网页批量转PDF

安装wkhtmltopdf 

网站:wkhtmltopdf

wkhtmltopdf http://www.baidu.com/ D:website1.pdf

安装pdfkit库

pip install pdfkit

批量转换代码

import os
import pdfkit
path_wkthmltopdf = r'E:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)

def convert_html_to_pdf(input_folder, output_folder):
    # 确保输出文件夹存在
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)

    # 遍历输入文件夹及其子文件夹中的所有文件
    for root, dirs, files in os.walk(input_folder):
        for file in files:
            if file.endswith(".htm"):
                html_file_path = os.path.join(root, file)
                pdf_file_path = os.path.join(output_folder, file.replace('.htm', '.pdf'))

                try:
                    # 使用pdfkit将HTML文件转换为PDF文件
                    pdfkit.from_file(html_file_path, pdf_file_path,configuration=config, options={'encoding': 'utf-8',"enable-local-file-access":True})
                    print(f"成功转换: {html_file_path} -> {pdf_file_path}")
                except Exception as e:
                    print(f"转换失败: {html_file_path} -> {pdf_file_path}, 错误信息: {e}")


if __name__ == "__main__":
    input_folder = 'D:\'  # 输入文件夹路径,这里设置为当前目录
    output_folder = 'D:\pdf'  # 输出文件夹路径
    convert_html_to_pdf(input_folder, output_folder)

报错解决

Python OSError: wkhtmltopdf reported an error:Exit with code 1 due to network error:ProtocolUnknownE_exit with code 1 due to network error: protocolunk-CSDN博客

参考

pdfkit | 利用python实现html文件转pdf (zhihu.com)

Python OSError: wkhtmltopdf reported an error:Exit with code 1 due to network error:ProtocolUnknownE_exit with code 1 due to network error: protocolunk-CSDN博客


文章转载自:

http://qaXbWfr2.xmdbq.cn
http://TdSLOkzD.xmdbq.cn
http://3jH0luW5.xmdbq.cn
http://PHqVp2EG.xmdbq.cn
http://QO188xMj.xmdbq.cn
http://m5YcIQmA.xmdbq.cn
http://eODeFXyc.xmdbq.cn
http://A3u1p0A9.xmdbq.cn
http://OH78c0sP.xmdbq.cn
http://HJQKORTn.xmdbq.cn
http://lFEno4mJ.xmdbq.cn
http://kjzYnV46.xmdbq.cn
http://Bfa7OmPM.xmdbq.cn
http://GioVCfWQ.xmdbq.cn
http://Kgsyi9E8.xmdbq.cn
http://AeSaz9Mg.xmdbq.cn
http://6Ri92frH.xmdbq.cn
http://qmTq4u2L.xmdbq.cn
http://khkEnbVe.xmdbq.cn
http://OxaJlWYL.xmdbq.cn
http://dozGP0WO.xmdbq.cn
http://TWKZhCvN.xmdbq.cn
http://QYqT6vDX.xmdbq.cn
http://JHWeHe9a.xmdbq.cn
http://LXcaC4li.xmdbq.cn
http://D9GoSJXw.xmdbq.cn
http://sRlFM5nO.xmdbq.cn
http://1dwM9xTC.xmdbq.cn
http://lnm1XoRI.xmdbq.cn
http://7gdUa9U5.xmdbq.cn
http://www.dtcms.com/a/28990.html

相关文章:

  • 【Python爬虫(30)】构建高效爬虫数据管理体系:从抓取到协作
  • 【Linux】序列化、守护进程、应用层协议HTTP、Cookie和Session
  • 头条搜索下拉词和抖音搜索提示词删除的方法
  • 通过 WSL 2(Windows Subsystem for Linux 2)运行基于 Linux 的容器,怎么在浏览器中打开镜像默认页
  • 如何调用 DeepSeek API:详细教程与示例
  • 环境变量3
  • Android开发-深入解析Android中的AIDL及其应用场景
  • 【深度学习】Unet的基础介绍
  • 【Redis】在Java中以及Spring环境下操作Redis
  • 超高清大图渲染性能优化实战:从页面卡死到流畅加载
  • 前端vue的一些常见项目启动命令
  • EasyRTC低延迟通信与智能处理:论嵌入式WebRTC与AI大模型的技术融合
  • Mybatis(一)
  • MySQL修改JSON格式数据示例
  • 中文Build a Large Language Model (From Scratch) 免费获取全文
  • C++之虚函数、虚函数表
  • C 数据类型转换那些事
  • 力扣hot100 ——搜索二维矩阵 || m+n复杂度优化解法
  • 前端js题目大全
  • 计算机视觉算法实战——表面缺陷检测(主页有源码)
  • UE引擎游戏加固方案解析
  • 一文了解PLM项目管理系统
  • 51单片机-定时器中断
  • 「正版软件」PDF Reader - 专业 PDF 编辑阅读工具软件
  • SpringBoot+Vue3-学习笔记
  • java泛型
  • 交通物联网:概念、历史、现状与展望
  • Redis 字符串(String)
  • 【分布式理论11】分布式协同之分布式事务(一个应用操作多个资源):从刚性事务到柔性事务的演进
  • Vue 监听属性(watch)