『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爬虫』 专栏,持续更新中
『未完待续』


相关推荐
Right.W2 分钟前
生成PDF文件(基于 iText PDF )
spring cloud·pdf
ahead~18 分钟前
【大模型入门】访问GPT_API实战案例
人工智能·python·gpt·大语言模型llm
大模型真好玩1 小时前
准确率飙升!GraphRAG如何利用知识图谱提升RAG答案质量(额外篇)——大规模文本数据下GraphRAG实战
人工智能·python·mcp
19891 小时前
【零基础学AI】第30讲:生成对抗网络(GAN)实战 - 手写数字生成
人工智能·python·深度学习·神经网络·机器学习·生成对抗网络·近邻算法
华科云商xiao徐1 小时前
Java多线程爬虫动态线程管理实现
java·爬虫·数据挖掘
华科云商xiao徐1 小时前
高性能小型爬虫语言与代码示例
前端·爬虫
applebomb1 小时前
没合适的组合wheel包,就自行编译flash_attn吧
python·ubuntu·attention·flash
Chasing__Dreams2 小时前
python--杂识--18.1--pandas数据插入sqlite并进行查询
python·sqlite·pandas
彭泽布衣2 小时前
python2.7/lib-dynload/_ssl.so: undefined symbol: sk_pop_free
python·sk_pop_free
喜欢吃豆3 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp