python批量识别图片表格数据写入到excel表格中
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 =
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) 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 installpytesseract
这几个都安装一遍再试试
rx_y2000 发表于 2024-7-2 16:53
pip install image
pip install workbook
pip installpytesseract
C:\Users\Administrator>pip install image
'pip' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Users\Administrator>python
C:\Users\Administrator>pip install workbook
'pip' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Users\Administrator>pip installpytesseract
'pip' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Users\Administrator> 這個好。前兩天為一些表格數據折騰了chatgpt好長時間才搞好。 谢谢分享 这个怎么使用呀,我小白,电脑安装了python3.12.3 上面的代码也保存了.py文件名 fanny188 发表于 2024-7-2 14:08
这个怎么使用呀,我小白,电脑安装了python3.12.3 上面的代码也保存了.py文件名
里面有调用示例的 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 <module>
from PIL import Image
ModuleNotFoundError: No module named 'PIL'
C:\Users\Administrator> 这个太有用了,非常感谢。 可以的,会有时常用到 想用,可是不怎么怎么用,有完整的小程序吗