微软开源!Office 文档轻松转 Markdown!

大家好,我是 Java陈序员

今天,给大家介绍一款微软开源的文档转 Markdown 工具。

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

MarkItDown —— 微软开源的 Python 工具,能够将多种常见的文件格式(如 PDF、PowerPoint、Word、Excel、图像、音频和 HTML 等)转换为 Markdown 格式。

功能特色

  • 支持将常用的 Office 文档转换为 Markdown 格式
  • 提供了简单易用的 Python API 和 REST API
  • 一键安装、转换

安装使用

Pip 一键安装

1、使用 Pip 一键安装

在 Windows 中,可以使用 Pip 一键安装 MarkItDown, 需先安装 Python 环境。

```bash
pip install markitdown
```

2、一键转换

安装好 MarkItDown 后,打开命令行窗口 输入命令即可对文件进行转换。

如将 Excel 文件 test.xlsx 进行转换:

微软开源!Office 文档轻松转 Markdown!

在命令行窗口输入如下命令:

```bash
markitdown test.xlsx > test.md
```

或者使用 -o 指定输出文件:

```bash
markitdown test.xlxs -o test.md
```

转换后的 Markdown 文件 test.md:
微软开源!Office 文档轻松转 Markdown!

Python API

MarkItDown 支持在 Python 中使用,可通过如下代码实现文件转换功能:

```python
from markitdown import MarkItDown

# 初始化 MarkItDown 对象
markitdown = MarkItDown()

# 转换 Excel 文件为 Markdown 格式
result = markitdown.convert("test.xlsx")

# 打印转换后的 Markdown 内容
print(result.text_content)
```

Docker 部署

1、运行 Docker 容器

```bash
docker run -d --name markitdown -p 8000:8000 pig4cloud/markitdown
```

2、容器启动成功后,访问 API 文档

```bash
http://{ip/域名}:8000/docs
```

微软开源!Office 文档轻松转 Markdown!

3、REST API 调试

  • 使用在线 Swagger 文档调试

微软开源!Office 文档轻松转 Markdown!

  • 使用 Postman 进行调试

微软开源!Office 文档轻松转 Markdown!

  • Curl 命令调试

    bash
    curl -X 'POST' 
     'http://localhost:8000/upload/' 
     -H 'Content-Type: multipart/form-data' 
     -F 'file=@test.xlxs'

REST API 返回的 Markdown 格式文本,可以直接嵌入到 Markdown 文档中,或者通过其他工具进行 ETL 进一步处理。

总结

MarkItDown 不仅仅支持常用的文档转换,还支持与大模型进行集成,具体的使用可参考项目文档。

尽管 MarkItDown 实现了大部分文件格式转换为 Markdown 的功能,但是对于一些格式较为复杂的报表文件,转换效果可能不太理想,期待后续版本迭代优化。

如果你在日常生活中,需要将文件转换为 Markdown, 不妨试试 MarkItDown.

```
项目地址:https://github.com/microsoft/markitdown
```

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

```
https://github.com/chenyl8848/great-open-source-project
```

或者访问网站,进行在线浏览:

```
https://chencoding.top:8090/#/
```

微软开源!Office 文档轻松转 Markdown!

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!


文章整理自互联网,只做测试使用。发布者:Lomu,转转请注明出处:https://www.it1024doc.com/6019.html

(0)
LomuLomu
上一篇 2025 年 1 月 12 日 下午1:48
下一篇 2025 年 1 月 12 日 下午2:48

相关推荐

  • manim边学边做–移动动画

    在Manim动画库中,实现直线移动动画是一项基础而直接的任务,每个Mobject对象都配备了animate属性,使得通过obj.animate.shift()或obj.animate.move_to()将对象从一个位置移动到另一个位置变得轻而易举。 然而,对于需要遵循复杂路径的移动动画,标准的animate方法就显得力不从心了。本文将深入探讨Manim中两个…

    未分类 2024 年 12 月 26 日
    59400
  • 基于Java的世界时区自动计算及时间生成方法

    目录 前言 一、zoneinfo简介 1、zoneinfo是什么 2、zoneinfo有什么 二、在Java中进行时区转换 1、Java与zoneInfo 2、Java展示zoneInfo实例 3、Java获取时区ID 三、Java通过经纬度获取时区 1、通过经度求解偏移 2、通过偏移量计算时间 3、统一的处理算法 四、总结 前言 在全球化浪潮的推动下,IT…

    2024 年 12 月 27 日
    58400
  • 履约系统:应用层、领域层、集成关系设计

    大家好,我是汤师爷~ 在这篇文章中,我们一起探讨订单履约系统的应用架构设计。 应用架构设计 我们前面讨论了系统的核心概念模型和拆单逻辑。接下来,让我们从应用架构的角度,深入了解系统的各个层次。这包括应用层、领域层,以及与其他系统的集成关系。 应用层能力 应用层定义软件的应用功能,它负责接收用户请求,协调领域层能力来执行任务,并将结果返回给用户,核心模块包括:…

    2025 年 1 月 6 日
    50100
  • Java语言程序设计——篇十一(3)

    🌿🌿🌿跟随博主脚步,从这里开始→博主主页🌿🌿🌿 欢迎大家:这里是我的学习笔记、总结知识的地方,喜欢的话请三连,有问题可以私信🌳🌳🌳 您的点赞👍、关注➕、收藏⭐️、评论📝、私信📧是我最大的支持与鼓舞!!!🌻🌻🌻 集合——Set Set接口及实现类 HashSet类 实战演练 用Set对象实现集合操作 TreeSet类 实战演练 实战演练 对象顺序 实战演练 综…

    2024 年 12 月 31 日
    54500
  • 阿里一面:那我把线程池coreSize配置成0会怎样?

    写在前面 设想一下,在我们的项目中存在一个边缘的业务流程,它并不频繁地被触发。在设计线程池时,我回想起了线程池的常见配置原则。为了最大限度地节省资源,我将核心线程数(corePoolSize)设置为0。这样的配置是否能够顺利执行任务呢? 线程池配置原则回顾 在任务提交时,线程池会根据以下策略进行处理: 如果线程池中的线程数少于核心线程数,则创建一个新线程来执…

    2024 年 12 月 26 日
    59400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信