智能体开发者社区

智能体开发者社区 MarkItDown python的如何使用

MarkItDown python的如何使用

MarkItDown 是一个能把各类文件转换成 Markdown 格式的轻量级 Python 工具,适合和大语言模型(LLM)以及相关文本分析流程配合使用。

MarkItDown 是一个能把各类文件转换成 Markdown 格式的轻量级 Python 工具,适合和大语言模型(LLM)以及相关文本分析流程配合使用。下面详细介绍它的使用方法:

1. 安装

要使用 MarkItDown,你得先通过 pip 来安装:

pip install markitdown
  • 1.

要是想保持向后兼容,可使用下面的命令:

pip install 'markitdown[all]'
  • 1.
2. 基本使用示例
转换单个文件

以下是把单个文件转换为 Markdown 的 Python 代码示例:

from markitdown import MarkItDown

# 创建 MarkItDown 实例
md_converter = MarkItDown()

# 要转换的文件路径
file_path = 'example.pdf'

# 执行转换
markdown_output = md_converter.convert(file_path)

# 打印转换后的 Markdown 内容
print(markdown_output)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

上述代码先导入 MarkItDown 类,创建实例,接着指定要转换的文件路径,调用 convert 方法进行转换,最后打印出转换后的 Markdown 内容。

从文件流转换

从 0.1.0 版本开始,convert_stream 方法需要二进制文件类对象。下面是使用文件流进行转换的示例:

import io
from markitdown import MarkItDown

# 创建 MarkItDown 实例
md_converter = MarkItDown()

# 以二进制模式打开文件
with open('example.pdf', 'rb') as file:
    # 转换文件流
    markdown_output = md_converter.convert_stream(file)

# 打印转换后的 Markdown 内容
print(markdown_output)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

在这个例子中,以二进制模式打开文件,把文件对象传递给 convert_stream 方法完成转换。

3. 支持的文件类型

MarkItDown 支持多种文件类型的转换,例如:

  • PDFmd_converter.convert('example.pdf')
  • PowerPointmd_converter.convert('example.pptx')
  • Wordmd_converter.convert('example.docx')
  • Excelmd_converter.convert('example.xlsx')
  • 图像md_converter.convert('example.jpg')
  • 音频md_converter.convert('example.mp3')
  • HTMLmd_converter.convert('example.html')
  • 文本格式md_converter.convert('example.csv')
  • ZIP 文件md_converter.convert('example.zip')
  • YouTube 网址md_converter.convert('https://www.youtube.com/watch?v=xxxxxxx')
  • EPubmd_converter.convert('example.epub')
4. 命令行界面(CLI)

MarkItDown 也提供了命令行界面,可直接在终端里使用:

markitdown example.pdf
  • 1.

这个命令会把 example.pdf 文件转换为 Markdown,并将结果输出到终端。若要把结果保存到文件,可以使用重定向:

markitdown example.pdf > output.md
  • 1.
5. 注意事项
  • 版本变更:从 0.0.1 到 0.1.0 版本有重大变更,像 convert_stream 方法现在需要二进制文件类对象,DocumentConverter 类接口也有变化。
  • 输出用途:MarkItDown 的输出主要供文本分析工具使用,若要进行高保真度的文档转换供人类阅读,它可能不是最佳选择。
Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐

  • 浏览量 853
  • 收藏 0
  • 0

所有评论(0)

查看更多评论 
已为社区贡献10条内容