表格解析调研

表格解析调研

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
相关推荐
m0_587958957 小时前
游戏与图形界面(GUI)
jvm·数据库·python
不剪发的Tony老师7 小时前
Spyder:一款面向数据科学的Python集成开发环境
ide·python
中屹指纹浏览器7 小时前
2026住宅IP网络环境下指纹浏览器稳定性优化与工程实践
经验分享·笔记
云边散步7 小时前
godot2D游戏教程系列二(20)
笔记·学习·音视频
众创岛8 小时前
python中enumerate的用法
开发语言·python
布史8 小时前
Prometheus Python Client 实操指南:从零实现自定义 Exporter
网络·python·prometheus
年纪青青8 小时前
NanoPi Neo移植笔记(U-Boot v2025.10 + Linux Kernel 6.18 + Ubuntu 24.04 根文件系统)
linux·笔记·ubuntu·nanopi neo·linux镜像
纤纡.8 小时前
矿物识别分类:8 种机器学习算法对比与实战(平均值填充数据集)
python·深度学习·算法·机器学习
2301_818419018 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
代码探秘者8 小时前
【算法篇】3.位运算
java·数据结构·后端·python·算法·spring