『python爬虫』使用docling 将pdf或html网页转为MD (保姆级图文)

目录


欢迎关注 『python爬虫』 专栏,持续更新中
欢迎关注 『python爬虫』 专栏,持续更新中

预览效果

支持转化pdf的表格

安装

Docling 本身是专注于文档转换的工具,通常用于将文件(如 PDF)转换为其他格式(如 Markdown)

要求python3.11版本+

javascript 复制代码
pip install docling

下载模型

  • 第一次运行需要下载外网的模型,需要tz保证网络通畅,否则会一直飘红报错
  • 可能需要较长时间计算分析,尤其是你没有GPU 使用CPU的情况
javascript 复制代码
Fetching 9 files: 100%|██████████| 9/9 [00:00<00:00, 15840.85it/s]
Neither CUDA nor MPS are available - defaulting to CPU. Note: This module is much faster with a GPU.

测试代码

javascript 复制代码
from docling.document_converter import DocumentConverter

# 第一次运行需要下载外网的模型,需要tz保证网络通畅

# 外网pdf论文
# source = "https://arxiv.org/pdf/2206.01062"  # document per local path or URL

# 可以是网页
# source = "https://blog.csdn.net/u011027547/article/details/143885170"  # document per local path or URL

# 可以是pdf
source = "https://www.gov.cn/zhengce/zhengceku/2022-11/12/5726417/files/b0d97070c0674ab0a1dec4ccd45dd726.pdf"  # document per local path or URL

# 初始化 DocumentConverter
converter = DocumentConverter()

# 执行转换
result = converter.convert(source)

# 获取转换后的 Markdown 内容
markdown_content = result.document.export_to_markdown()

# 保存到 .md 文件
with open(source.split('/')[-1]+".md", "w", encoding="utf-8") as md_file:
    md_file.write(markdown_content)

print("Markdown 文件已保存为 "+source.split('/')[-1]+".md")

总结

大家喜欢的话,给个👍,点个关注!给大家分享更多计算机专业学生的求学之路!

版权声明:

发现你走远了@mzh原创作品,转载必须标注原文链接

Copyright 2023 mzh

Crated:2023-3-1

欢迎关注 『python爬虫』 专栏,持续更新中
欢迎关注 『python爬虫』 专栏,持续更新中
『未完待续』


相关推荐
@一辈子爱你12 分钟前
归来九十余日:在时代的夹缝中,与你共筑一道光
python
q***017725 分钟前
SpringBoot实战(三十二)集成 ofdrw,实现 PDF 和 OFD 的转换、SM2 签署OFD
spring boot·后端·pdf
HsuHeinrich34 分钟前
利用面积图探索历史温度的变化趋势
python·数据可视化
winfredzhang41 分钟前
Python实战:手把手教你写一个带界面的“照片按日期归档与清理”工具
python·复制·日期·回收站·媒体文件备份
嗯、.3 小时前
使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF)
java·pdf·itextpdf·openpdf·坐标变换矩阵
程序员三藏4 小时前
Jmeter自动化测试
自动化测试·软件测试·python·测试工具·jmeter·测试用例·接口测试
拓端研究室5 小时前
专题:2025AI产业全景洞察报告:企业应用、技术突破与市场机遇|附920+份报告PDF、数据、可视化模板汇总下载
大数据·人工智能·pdf
南风微微吹5 小时前
2026年新大纲普通话考试真题题库50套PDF电子版
pdf·普通话
吴佳浩6 小时前
Langchain 浅出
python·langchain·llm
smj2302_796826526 小时前
解决leetcode第3753题范围内总波动值II
python·算法·leetcode