PyMuPDF4LLM 是一个旨在将 PDF 转换为 Markdown 格式的库。在这里,我将分享我测试这个库的经验。
首先使用以下命令安装库:
pip install pymupdf4llm
基本用法非常简单,只需三行代码即可将 PDF 转换为 Markdown:
import pymupdf4llm md_text = pymupdf4llm.to_markdown("input.pdf") print(md_text)
您可以指定参数来调整内容的提取方式。
默认情况下,整个 PDF 会转换为单个文本输出。但是,您可以通过指定 page_chunks=True 来逐页提取文本。
md_text = pymupdf4llm.to_markdown("input.pdf", page_chunks=True)
要将图像提取为文件,请使用 write_images=True 选项:
md_text = pymupdf4llm.to_markdown("input.pdf", write_images=True)
也可以使用base64编码直接在Markdown中嵌入图像:
md_text = pymupdf4llm.to_markdown("input.pdf", embed_images=True)
为了进行测试,使用了具有不同 Markdown 元素的各种 PDF。
标题已正确转换为 Markdown 格式。这是结果的一部分:
# Sample Markdown Guide This is a sample markdown file that includes various features for quick reference. ## 1. Headers ... ## 3. Lists
粗体和斜体格式也正确转换:
**Bold: **Bold Text**** _Italic: *Italic Text*_ **_Bold and Italic: ***Bold and Italic***_**
第一级有序列表转换没有问题,但嵌套列表和无序列表转换不准确。
## 3. Lists ### Unordered List Item 1 Item 2 Sub-item 1 Sub-item 2 ### Ordered List 1. First item 2. Second item 1. Sub-item A 2. Sub-item B
链接的URL被提取,但包含链接的整行变成了超链接,偏离了原始格式。
## 4. Links and Images [You can add links using [Link Text](URL).](https://www.example.com/)
默认情况下不提取图像,但可以使用 write_images=True 将图像保存在本地。
md_text = pymupdf4llm.to_markdown("input.pdf", write_images=True)
然后在 Markdown 中引用保存的图像,如下所示:
### Image Example
![](input.pdf-1-0.png)
没有垂直边框的简单表格无法准确转换(可能是因为不明确的列边界导致表格被视为纯文本)。
## 5. Tables
**Column 1** **Column 2** **Column 3**
Row 1 Data A Data B
Row 2 Data C Data D
代码块已正确转换,但语言规范(例如 python)未保留。内联代码转换也存在问题。
## 6. Code
### Inline Code
Use backticks for inline code: print("Hello, world!")
### Code Block
Use triple backticks for code blocks:
```
def greet(name):
return f"Hello, {name}!"
print(greet("Markdown"))
```
对于多行文本,换行符将按原始 PDF 中的显示方式保留。
Markdown is a lightweight and versatile markup language favored by developers, writers, and bloggers alike
due to its simplicity in formatting text, enabling users to create readable and well-structured documents—
whether for documentation, blog posts, or articles—without the complexity of HTML, while also offering the
ability to convert content seamlessly into other formats like HTML, PDF, and even slideshows, making it an
ideal choice for projects that require both clarity and flexibility in presentation.
尽管在准确转换列表和链接方面存在挑战,PyMuPDF4LLM 是将 PDF 转换为 Markdown 的有用工具。它可以在本地工作,无需外部语言模型,适合无法访问互联网的环境。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3