python批量识别图片表格数据写入到excel表格中

查看 118|回复 9
作者:Eks6666   
[Python] 纯文本查看 复制代码
from PIL import Image
import pytesseract
from openpyxl import Workbook
def load_image(image_path):
    image = Image.open(image_path)
    return image
def convert_to_grayscale(image):
    return image.convert("L")
def extract_text(image):
    return pytesseract.image_to_string(image)
def extract_table_data(text):
    rows = text.strip().split("\n")
    table_data = [row.split("\t") for row in rows]
    return table_data
def save_as_excel(table_data, output_path):
    workbook = Workbook()
    sheet = workbook.active
    for row_index, row_data in enumerate(table_data, start=1):
        for column_index, cell_data in enumerate(row_data, start=1):
            sheet.cell(row=row_index, column=column_index, value=cell_data)
    workbook.save(output_path)
# 调用示例
image_path = "table_image.jpg"
output_path = "table_data.xlsx"
image = load_image(image_path)
grayscale_image = convert_to_grayscale(image)
text = extract_text(grayscale_image)
table_data = extract_table_data(text)
save_as_excel(table_data, output_path)

表格, 批量

fengzi8388   

這個好。前兩天為一些表格數據折騰了chatgpt好長時間才搞好。
baikun791217   

谢谢分享
fanny188   

这个怎么使用呀,我小白,电脑安装了python3.12.3    上面的代码也保存了.py文件名  
ericwise   


fanny188 发表于 2024-7-2 14:08
这个怎么使用呀,我小白,电脑安装了python3.12.3    上面的代码也保存了.py文件名

里面有调用示例的
fanny188   


ericwise 发表于 2024-7-2 14:28
里面有调用示例的

C:\Users\Administrator>D:\Personal\Desktop\1.py
Traceback (most recent call last):
  File "D:\Personal\Desktop\1.py", line 1, in
    from PIL import Image
ModuleNotFoundError: No module named 'PIL'
C:\Users\Administrator>
ashirogimuto   

这个太有用了,非常感谢。
huliuwa   

可以的,会有时常用到
rx_y2000   


fanny188 发表于 2024-7-2 14:40
C:%users\Administrator>D:\Personal\Desktop\1.py
Traceback (most recent call last):
  File "D:\Pe ...

pip install image
pip install workbook
pip install  pytesseract
这几个都安装一遍再试试
dork   

谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

返回顶部