表格解析调研

表格解析调研

TextInTools

TextInTools:https://tools.textin.com/table

可以将表格图片解析成可编辑的表格/json,效果不错

白描

地址:https://web.baimiaoapp.com/image-to-excel

可以将表格图片识别成可编辑的表格,可复制、导出为xlsx、txt。效果不错,但是免费有额度

i2PDF

地址:https://www.i2pdf.com/cn/extract-tables-from-pdf

可以对pdf进行多种处理,提取表格效果不错,并且可以选择导出的格式,效果不错

Tabula-PDF

项目地址:https://github.com/tabulapdf/tabula

用于从PDF文档中识别和提取表格数据。它利用机器学习算法和计算机视觉技术,能够准确地识别PDF页面中的表格,并将其转换为结构化数据。Tabula-PDF会将识别到的表格转换为结构化数据,如CSV、Excel、json等格式。效果一般

pdflux

项目地址:https://pdflux.com/

效果不错,会有免费额度

iLoveOCR

地址:https://cn.iloveocr.com/

效果一般

ocr2edit

地址:https://www.ocr2edit.com/zh

识别效果不好

py代码

使用python-docx库

python代码实现将word中的表格解析出来

python 复制代码
from docx import Document

doc = Document('example.docx')
for table in doc.tables:
    for row in table.rows:
        cells = [cell.text for cell in row.cells]
        print(cells)

使用PyMuPDF

需要安装PyMuPDF,可以用来提取pdf内容,并且可以查找页面的表格。效果不错

python 复制代码
import fitz

doc = fitz.open('../example.pdf')
page = doc[2]  # 下标从0开始
tables = page.find_tables()
df = tables[1].to_pandas()

df.to_excel('table.xlsx', index=False)

使用pdfplumber库

使用pdfplumber实现将pdf中的表格解析出来,效果一般,示例代码如下:

python 复制代码
import pdfplumber
import pandas as pd

with pdfplumber.open("../example.pdf") as pdf:
    page = pdf.pages[3]
    for table in page.extract_tables():
        df = pd.DataFrame(table[1:], columns=table[0])
        df.to_excel('table.xlsx', index=False)

使用camelot库

camelot专门用于从 PDF 文件中提取表格数据。效果不错

python 复制代码
import camelot

tables = camelot.read_pdf('../example.pdf')

tables.export('result.csv', f='csv', compress=True) # json, excel, html, markdown, sqlite

print(tables[0].parsing_report)

tables[0].to_csv('result.csv') # to_json, to_excel, to_html, to_markdown, to_sqlite
相关推荐
用户7227868123442 分钟前
python3.13 3.14 新特性 好好好
python
SunnyDays101120 分钟前
使用 Python 高效删除 Excel 重复数据(Excel 去重方法详解)
python·删除excel重复行·删除excel重复数据·excel去重·删除excel重复值
再__努力1点21 分钟前
【68】颜色直方图详解与Python实现
开发语言·图像处理·人工智能·python·算法·计算机视觉
Brian Xia24 分钟前
Nano-vLLM 源码分析(一) - 课程大纲
python·ai
猪在黑魔纹里31 分钟前
解决VSCode无法高亮、解析numpy中的部分接口(如pi、deg2rad)
ide·vscode·python·numpy
走在路上的菜鸟34 分钟前
Android学Dart学习笔记第十三节 注解
android·笔记·学习·flutter
爱笑的眼睛1139 分钟前
文本分类的范式演进:从统计概率到语言模型提示工程
java·人工智能·python·ai
星川皆无恙1 小时前
基于知识图谱+深度学习的大数据NLP医疗知识问答可视化系统(全网最详细讲解及源码/建议收藏)
大数据·人工智能·python·深度学习·自然语言处理·知识图谱
Tipriest_1 小时前
旋转矩阵,齐次变换矩阵,欧拉角,四元数等相互转换的常用代码C++ Python
c++·python·矩阵
周杰伦_Jay1 小时前
【Go/Python/Java】基础语法+核心特性对比
java·python·golang