简单使用Marker

简单使用Marker

1 简单介绍

Marker是由Datalab维护的开源项目,它利用了surya的模型进行做的,能够快速准确地将文档转换为Markdown、JSON、分块数据及HTML格式。相对MinerU和Docling文件解析的效果较差,但是解析的速度是较快的,如果考虑速度和性能,可以考虑这个模型。不好的地方除了github没有官方本地部署较完整的文档。

Datalab也维护了Surya,Surya是一款文档OCR工具包,功能包括:支持90多种语言的OCR技术、任意语言的行级文本检测

版面分析(表格、图像、标题等检测)、阅读顺序检测、表格识别(检测行/列)、LaTeX OCR(数学公式)。

复制代码
# Github地址(没有标准的开发文档)
https://github.com/datalab-to/marker

# Surya的Github地址
https://github.com/datalab-to/surya

2 安装环境

安装依赖环境

复制代码
pip install marker-pdf[full] -i https://pypi.tuna.tsinghua.edu.cn/simple

简单例子

注意:Windows中模型的默认下载路径是"C:\Users\Admin\AppData\Local\datalab",Admin是我的用户名,此处对应你的用户名。模型大小:4.97G。

复制代码
# 注意!! 解析的过程不支持多线程和多协程
from marker.converters.pdf import PdfConverter
from marker.models import create_model_dict
from marker.output import text_from_rendered


def test():
    print(create_model_dict())
    converter = PdfConverter(
        artifact_dict=create_model_dict()
    )

    # 解析图片
    rendered = converter("E:/temp/test.png")
    text, _, images = text_from_rendered(rendered)
    print(text, _, images)

    # 解析pdf
    rendered = converter("E:/test/test1.pdf")
    text, _, images = text_from_rendered(rendered)
    print(text, _, images)

    # 解析docx
    rendered = converter("E:/test/test2.docx")
    text, _, images = text_from_rendered(rendered)
    print(text, _, images)


if __name__ == '__main__':
    test()

截图

相关推荐
小呀小萝卜儿14 分钟前
2025-11-14 学习记录--Python-特征归一化方法(Min-Max或StandardScaler)
开发语言·python·学习
顾安r21 分钟前
11.14 脚本网页 青蛙过河
服务器·前端·python·游戏·html
测试199827 分钟前
如何用Appium实现移动端UI自动化测试?
自动化测试·软件测试·python·测试工具·ui·职场和发展·appium
Python私教1 小时前
第一个Python金融爬虫
爬虫·python·金融
nvd112 小时前
Python 迭代器 (Iterator) vs. 生成器 (Generator)
开发语言·python
老罗-Mason2 小时前
Apache Flink运行环境搭建
python·flink·apache
Blossom.1183 小时前
大模型量化压缩实战:从FP16到INT4的生产级精度保持之路
开发语言·人工智能·python·深度学习·神经网络·目标检测·机器学习
linuxxx1103 小时前
Django 缓存详解与应用方法
python·缓存·django
野生工程师3 小时前
【Python爬虫基础-3】数据解析
开发语言·爬虫·python