微软开源!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/6389.html

(0)
LomuLomu
上一篇 2025 年 1 月 14 日 下午1:57
下一篇 2025 年 1 月 15 日 上午1:59

相关推荐

  • Java怎样实现将数据导出为Word文档

    文章首发于我的博客:Java怎样实现将数据导出为Word文档 – Liu Zijian’s Blog 我们在开发一些系统的时候,例如OA系统,经常能遇到将审批单数据导出为word和excel文档的需求,导出为excel是比较简单的,因为excel有单元格来供我们定位数据位置,但是word文档的格式不像表格那样可以轻松的定位,要想将数据导出为一些带有图片和表格…

    2025 年 1 月 13 日
    38900
  • Java中List排序的3种方法

    在我们程序的编写中,有时候我们需要在 Java 程序中对 List 集合进行排序操作。比如获取所有用户的列表,但列表默认是以用户编号从小到大进行排序的,而我们的系统需要按照用户的年龄从大到小进行排序,这个时候,我们就需要对 List 集合进行自定义排序操作了。 List 排序的常见方法有以下 3 种: 使用 Comparable 进行排序; 使用 Compa…

    2024 年 12 月 30 日
    47800
  • Java Spring与Struts2框架安全漏洞深度解析

    三、Java Spring框架安全风险剖析 3.1 Spring核心组件与SpEL机制 ①框架概述作为企业级应用开发的基石,Spring Framework通过模块化设计显著提升了软件开发效率。其核心功能涵盖依赖注入(IoC)、面向切面编程(AOP)和模型-视图-控制器(MVC)架构,同时整合了数据访问、Web服务等关键模块。自3.0版本起,SpEL表达式引…

    2025 年 5 月 18 日
    17500
  • 『玩转Streamlit』–集成定时任务

    学习了Streamlit了之后,可以尝试给自己的命令行小工具加一个简单的界面。 本篇总结了我改造自己的数据采集的工具时的一些经验。 1. 概要 与常规的程序相比,数据采集任务的特点很明显,比如它一般都是I/O密集型程序,涉及大量网络请求或文件读写,耗费的时间比较长;而且往往是按照一定的时间间隔周期性地执行。 这样的程序对交互性要求不高,所以我之前都是用命令行…

    2025 年 1 月 13 日
    30900
  • SpringBoot3整合Swagger3时出现Type javax.servlet.http.HttpServletRequest not present错误

    目录 错误详情 错误原因 解决方法 引入依赖 修改配置信息 创建文件 访问 错误详情 错误原因 SpringBoot3和Swagger3版本不匹配 解决方法 使用springdoc替代springfox,具体步骤如下: 引入依赖 在pom.xml文件中添加如下依赖: org.springdoc springdoc-openapi-starter-webmvc…

    2025 年 1 月 15 日
    34300

发表回复

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

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

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

关注微信