夜雨聆风学习资料网

ARTICLE · 1113625

效率工具anydoc实测,14种文档格式本地一键转Markdown

效率工具anydoc实测,14种文档格式本地一键转Markdown

摘要

手头一堆 Word、PPT、Excel,想丢给大模型,卡点往往不是「转不了」,而是每种格式换一套工具。Firecrawl 开源的 anydoc 说一套 Rust 模型吃 14 种格式。我在 Windows 上从下载跑到 CLI:预编译半小时内能用;源码 cargo test 是 296 通过、0 失败。下文没标出处的数,都是本机敲出来的。

— CLI首次运行

— 多种办公文档格式汇入统一Markdown输出

01 — 动因

我为什么测它

写评测、攒 Agent 材料时,docx 一套、xlsx 一套、扫描 PDF 再换 OCR,来回切工具很烦。anydoc 还带 Node / Python / CLI / 浏览器 WASM,看起来能省事。我只想搞清楚三件事:Windows 好不好装、本地转得靠不靠谱、扫描件能不能真离线。

02 — 部署

部署过程

仓库地址:

...text

https://github.com/firecrawl/anydoc

1. 拉代码

优先 git:

...bash

git clone https://github.com/firecrawl/anydoc.git

直连 github.com:443 超时或失败时,我改拉源码包,这次能用:

...powershell

# PowerShell

Invoke-WebRequest -Uri "https://codeload.github.com/firecrawl/anydoc/zip/refs/heads/main" -OutFile anydoc.zip

Expand-Archive anydoc.zip -DestinationPath .

Rename-Item anydoc-main anydoc

2. 跑起来(预编译,不必先编 Rust)

...bash

npm install -g @firecrawl/anydoc

anydoc -V   # 本次为 0.2.4

anydoc .\tests\fixtures\docx\text.docx

Python:pip install firecrawl-anydoc。国内镜像 wheel 报 403 就换官方源:

...bash

pip install --index-url https://pypi.org/simple firecrawl-anydoc

要跑源码测试再装 Rust,仓库根目录执行 cargo test(本次 296 通过 / 0 失败)。

— SDK安装与最小示例

装完看体积:@firecrawl/anydoc@0.2.4 大约 7.95 MB,里头几乎全是 anydoc.win32-x64-msvc.node(约 7.89 MB)。

— 安装产物体积

03 — 实测

实际跑起来效果如何

仓库自带 fixture,挨个敲了一遍。

text.docx 转 Markdown,标题、加粗/斜体/删除线、嵌套列表都在,CLI EXIT=0。sheet.csv 表格正常;pres.pptx、sheet.xlsx 也能出稿。文本 PDF text.pdf 本机可转。扫描 PDF handmade-scanned.pdf直接拒了:提示 all 2 pages need OCR,EXIT=3,和文档写的一致。

— 典型任务:DOCX转换与OCR拒绝

速度别跟官方 README 那行中位 4.4ms 对号入座——那是排除进程启动、私有语料的库内口径。我这边全局装好 anydoc,同一 docx 预热后连跑 10 次,中位大约 105ms(含启动),更像你终端里敲一次的感觉。官方 WASM Demo 本机转同一 text.docx:1295 字符、28ms,页面没报错。

— 官方Demo首页

— Demo转换结果

cargo test 汇总是 296 passed / 0 failed / 1 ignored(ignored 那条要本地私有 samples/)。Node toMarkdown、Python to_markdown 对同一 fixture 大概 1295 / 1291 字符,结构对得上。仓库里有 bench/,语料标明不可再分发,LibreOffice / markitdown / pandoc 那张总表我没在本机重跑;README 里质量分、格式覆盖那些,当官方自测看就行。

04 — 槽点

槽点与不足

扫描 PDF 别当「完全本地」。文本层 PDF 可以离线;扫描件默认拒绝,要 OCR 就 --ocr hosted 走 Firecrawl Parse。本机没挂本地 OCR 钩子。文件绝不能出网的话,扫描件这条先别押在它身上。

— 扫描件无法完全离线,OCR需走外部托管服务

再说速度:库内毫秒级和「每次拉起进程」差一个数量级。偶尔批一把还行;热路径里反复 npx anydoc,启动时间会盖过转换本身。要长期服务,嵌 Node / Python / Rust API 比每次起 CLI 靠谱。

05 — 对比

和同类工具怎么比

跟 markitdown、pandoc、docling 比,anydoc 的爽点是一套命令怼办公格式:本机 fixture 里 docx / pptx / xlsx / csv / 文本 PDF 都能收成统一 Markdown,不用为每种格式换栈。

— 单一工具整合多格式转换,替代多套独立工具

体感就那两个数:CLI 含启动大约 105ms,浏览器 Demo 同一 docx 大约 28ms。官方还写过库内中位 4.4ms、综合质量分 81、格式 14/14——尺子不同,别拿来跟终端体感硬比。

混杂办公文档进 LLM、要一份结构稳的 Markdown,它够用。扫描件必须完全离线 OCR,或者你只抠某一种格式到极致,就别指望它包圆。

一句话:anydoc 适合把混杂办公文档快速收成统一 Markdown;文本稿本地够用,扫描件别指望完全离线。

我是老刘,普通人的AI职场副业指南:拆解AI副业项目,分享AI提效工具和一人公司玩法,帮你多赚一点、早下班一点。

如果你觉得今天这篇有收获,欢迎点赞、在看、转发三连,我们下篇见

相关学习资料