当前位置: 首页 > wzjs >正文

永清网站建设大型网站制作设计

永清网站建设,大型网站制作设计,手机网站格式商城,百度推广视频Python简单使用MinerU 1 简介 MinerU是国产的一款将PDF转化为机器可读格式的工具(如markdown、json),可以很方便地抽取为任意格式。目前支持图像(.jpg及.png)、PDF、Word(.doc及.docx)、以及P…

Python简单使用MinerU

1 简介

MinerU是国产的一款将PDF转化为机器可读格式的工具(如markdown、json),可以很方便地抽取为任意格式。目前支持图像(.jpg及.png)、PDF、Word(.doc及.docx)、以及PowerPoint(.ppt及.pptx)等。

# 官网地址
https://mineru.readthedocs.io/en/latest/index.html# Github地址
https://github.com/opendatalab/mineru# API接口地址
https://mineru.readthedocs.io/en/latest/user_guide/quick_start/convert_pdf.html# 模型下载脚本地址
# 从ModelScope下载模型:download_models.py
# 从HuggingFace下载模型: download_models_hf.py
https://github.com/opendatalab/MinerU/tree/master/scripts

2 安装MinerU

安装Python环境

# 我的版本是:magic-pdf==1.1.0
pip install -U "magic-pdf[full]" -i https://pypi.tuna.tsinghua.edu.cn/simple

下载权重

官网提供了HuggingFace和ModelScope两种方法下载,本文从ModlScope上下载,

# 官网下载方法地址
https://github.com/opendatalab/MinerU/blob/master/docs/how_to_download_models_zh_cn.md

开始下载权重

⚠️ 注意:模型下载完成后,脚本会自动生成用户目录下的magic-pdf.json文件,并自动配置默认模型路径。 您可在【用户目录】下找到magic-pdf.json文件。

# 安装modelscope
pip install modelscope# 下载文件
wget https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/scripts/download_models.py -O download_models.py
# 也可以到下面的地址,找到download_models.py下载
https://github.com/opendatalab/MinerU/tree/master/scripts# 执行下载模型
# 为了方便使用模型,我修改了download_models.py,添加了设置模型的位置。
python download_models.py

修改后的download_models.py

⚠️ 此步可以不做。

文件中的local_dir是我新加的下载模型的位置,如果不设置会下载到下面目录中:windows的用户目录为 “C:\Users\用户名”, linux用户目录为 “/home/用户名”。

import json
import osimport requests
from modelscope import snapshot_downloaddef download_json(url):# 下载JSON文件response = requests.get(url)response.raise_for_status()  # 检查请求是否成功return response.json()def download_and_modify_json(url, local_filename, modifications):if os.path.exists(local_filename):data = json.load(open(local_filename))config_version = data.get('config_version', '0.0.0')if config_version < '1.1.1':data = download_json(url)else:data = download_json(url)# 修改内容for key, value in modifications.items():data[key] = value# 保存修改后的内容with open(local_filename, 'w', encoding='utf-8') as f:json.dump(data, f, ensure_ascii=False, indent=4)if __name__ == '__main__':mineru_patterns = ["models/Layout/LayoutLMv3/*","models/Layout/YOLO/*","models/MFD/YOLO/*","models/MFR/unimernet_small_2501/*","models/TabRec/TableMaster/*","models/TabRec/StructEqTable/*",]# 设置模型下载的位置local_dir="E:/mineru"# 下载模型model_dir = snapshot_download('opendatalab/PDF-Extract-Kit-1.0', allow_patterns=mineru_patterns, local_dir=local_dir)layoutreader_model_dir = snapshot_download('ppaanngggg/layoutreader', local_dir=local_dir)model_dir = model_dir + '/models'print(f'model_dir is: {model_dir}')print(f'layoutreader_model_dir is: {layoutreader_model_dir}')json_url = 'https://gcore.jsdelivr.net/gh/opendatalab/MinerU@master/magic-pdf.template.json'config_file_name = 'magic-pdf.json'home_dir = os.path.expanduser('~')config_file = os.path.join(home_dir, config_file_name)json_mods = {'models-dir': model_dir,'layoutreader-model-dir': layoutreader_model_dir,}download_and_modify_json(json_url, config_file, json_mods)print(f'The configuration file has been configured successfully, the path is: {config_file}')

3 Python使用MinerU

Python安装完MinerU后,可以直接执行下面的代码,首次执行时会自动下载PaddleOCR模型的权重和参数,PaddleOCR模型会自动下载到用户目录下的.paddleocr目录下。

解析PDF文件的Python代码如下:

import osfrom magic_pdf.data.data_reader_writer import FileBasedDataWriter, FileBasedDataReader
from magic_pdf.data.dataset import PymuDocDataset
from magic_pdf.model.doc_analyze_by_custom_model import doc_analyze
from magic_pdf.config.enums import SupportedPdfParseMethod# pdf文件路径
pdf_file_path = "E:/hello/test-5-2.pdf"
# 获取没有后缀的pdf文件名称
pdf_file_path_without_suff = pdf_file_path.split(".")[0]
print(pdf_file_path_without_suff)# 文件所在的目录
pdf_file_path_parent_dir = os.path.dirname(pdf_file_path)
image_dir = os.path.join(pdf_file_path_parent_dir, "images")
print(image_dir)# Markdown的写入实例
# markdown_dir = "./output/markdown"
# writer_markdown = FileBasedDataWriter(markdown_dir)
writer_markdown = FileBasedDataWriter()
# 读取图片
writer_image = FileBasedDataWriter(image_dir)# 读取文件流
reader_pdf = FileBasedDataReader("")
bytes_pdf = reader_pdf.read(pdf_file_path)# 处理数据
dataset_pdf = PymuDocDataset(bytes_pdf)# 判断是否支持ocr
if dataset_pdf.classify() == SupportedPdfParseMethod.OCR:# 支持OCRinfer_result = dataset_pdf.apply(doc_analyze, ocr=True)pipe_result = infer_result.pipe_ocr_mode(writer_image)
else:# 不支持OCRinfer_result = dataset_pdf.apply(doc_analyze, ocr=False)pipe_result = infer_result.pipe_txt_mode(writer_image)# 在每一页上都使用模型解析文本
infer_result.draw_model(pdf_file_path)# 获取模型处理后的结果
model_inference_result = infer_result.get_infer_res()
print(model_inference_result)# 为pdf生成含有颜色标注布局的pdf文件
pipe_result.draw_layout(f"{pdf_file_path_without_suff}_layout.pdf")# 为pdf生成含有颜色标注文本行的pdf文件
pipe_result.draw_span(f"{pdf_file_path_without_suff}_spans.pdf")# 获取markdown的内容
markdown_content = pipe_result.get_markdown(image_dir)
print(markdown_content)# 保存markdown文件
# pipe_result.dump_md(writer_markdown, f"{pdf_file_path_without_suff}.md", image_dir)
pipe_result.dump_md(writer_markdown, f"{pdf_file_path_without_suff}.md", image_dir)# json文本列表
# 数据类型包括type、text、text_level、page_idx、img_path等
content_list_content = pipe_result.get_content_list(image_dir)
print(content_list_content)# 保存json文本列表
pipe_result.dump_content_list(writer_markdown, f"{pdf_file_path_without_suff}_content_list.json", image_dir)# 获取含有位置信息的json文本
middle_json_content = pipe_result.get_middle_json()# 保存含有位置信息的json文本
pipe_result.dump_middle_json(writer_markdown, f'{pdf_file_path_without_suff}_middle.json')

文章转载自:

http://QnyhlkjD.mjwnc.cn
http://3Krnt5cU.mjwnc.cn
http://tIBFYO0O.mjwnc.cn
http://Z5ABRMqU.mjwnc.cn
http://J1tWOMIo.mjwnc.cn
http://aK8hLfNg.mjwnc.cn
http://mk9aDgQN.mjwnc.cn
http://cv1uMCzn.mjwnc.cn
http://Km3tTkb4.mjwnc.cn
http://pCcNqjNj.mjwnc.cn
http://r5ohQRi1.mjwnc.cn
http://zm1PvbFl.mjwnc.cn
http://0JG2vzAY.mjwnc.cn
http://ghB91pyQ.mjwnc.cn
http://pnjJ46d9.mjwnc.cn
http://COaQiSUL.mjwnc.cn
http://hKEFNHzj.mjwnc.cn
http://Lh3EKvLW.mjwnc.cn
http://X3mXQvY5.mjwnc.cn
http://IggJJBrv.mjwnc.cn
http://syA9BVPZ.mjwnc.cn
http://GI5XOJYV.mjwnc.cn
http://L4xG6Sox.mjwnc.cn
http://RbsK1RDj.mjwnc.cn
http://VCIn1UZx.mjwnc.cn
http://nEQi0bv4.mjwnc.cn
http://rbzUOjc7.mjwnc.cn
http://q8h1b2t3.mjwnc.cn
http://QfarXokE.mjwnc.cn
http://xclf59Iy.mjwnc.cn
http://www.dtcms.com/wzjs/744768.html

相关文章:

  • 手机版网站怎么做的建站资源共享
  • 网站开发实例模板网站开发哪种语言好
  • 网站建设云南黄页企业名录
  • 部门网站建设的工作领导小组东莞做网站的网络公司
  • 您有新信息 建设招标网官方网站网站页面跳转怎么做
  • 网站建设中的接口公众号怎么制作二维码
  • 东莞市镇街建设项目监理招标网站为切实加强 网站建设
  • 百度怎么自己做网站短视频seo是什么
  • 深圳租房建设局网站北京网站建设企业网站制作
  • 便宜的网站设计企业有哪些做图纸的网站
  • 网站建设文件夹名字wordpress主题免费中文
  • 网站建设与维护工作内容微分销系统怎么做
  • 网站的排版好看做展示型网站便宜吗
  • 网站搭建中114514免费wordpress中文博客主题
  • 北京市房山建设培训学校网站想攻击一个网站怎么做
  • 网站制作软件是什么我想创个网站
  • 打开网页出现网站建设中专业做网站方案ppt
  • 网站开发建设明细报价表做网站的大小
  • 淘宝的网站是怎么做的企业宣传网页设计
  • 国外创意网站设计欣赏水泵网站站群建设
  • 网站域名注册信息查询wordpress 前台发布文章
  • 湖北做网站的公司图库素材网站模板
  • 营销推广型网站价格怎样做视频网站的外链
  • wap手机网站开发asp经验wordpress怎样在列表页使用瀑布流
  • 雄安网站建设优化公司个人网站制作的步骤
  • 提升网站建设品质公司淄博百度电话
  • 公司网站实名认证怎么做网站 备案 注销 影响
  • 做特产的网站开张怎么宣传北京工程信息网站
  • 柯桥网站建设域名自助服务平台
  • 帝国cms 关闭网站网站建设行业企业发展前景