加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
mupdf2json.py 1.80 KB
一键复制 编辑 原始数据 按行查看 历史
晨月之风 提交于 2024-07-04 12:31 . mupdf解析
import fitz # PyMuPDF
import json
import os
def find_pdf_files(directory):
"""
遍历指定目录,返回所有PDF文件的绝对路径列表。
:param directory: 要遍历的目录的路径
:return: 包含所有PDF文件绝对路径的列表
"""
print(directory)
pdf_files = [] # 存储找到的PDF文件的绝对路径
for root, dirs, files in os.walk(directory):
for file in files:
# print("ok")
if file.lower().endswith('.pdf'): # 检查文件后缀是否为.pdf
pdf_files.append(os.path.join(root, file)) # 添加文件的绝对路径
return pdf_files
def pdf_to_json(pdf_file, json_file):
# 打开 PDF 文件
doc = fitz.open(pdf_file)
# 初始化一个字典来存储 JSON 数据
json_data={}
# 遍历 PDF 中的每一页
for page_number in range(len(doc)):
page = doc[page_number]
# 提取当前页的文本
text = page.get_text()
# 将提取的文本添加到 JSON 数据的 pages 列表中
json_data["page_{}".format(page_number)] = {
"text": text
}
doc.close()
# 将 JSON 数据写入文件
with open(json_file, "w", encoding="utf-8") as jsonfile:
json.dump(json_data, jsonfile, ensure_ascii=False, indent=4)
# 关闭文档
# 使用示例,注意文件目录的写法,使用双反斜杠不行
directory_path = (r'C:\Users\awu\projects\tencent-ocr-analysis-master\pdf\src_pdf')
input_pdf_list =find_pdf_files(directory_path)
for input_pdf in input_pdf_list:
print(input_pdf)
# 将 PDF 文件转换为 JSON 文件
str_file=input_pdf.replace(".pdf",".json")
out_file=str_file.replace(r'pdf\img_pdf',"mupdf_json")
pdf_to_json(input_pdf, out_file)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化