python pandas 处理excel单元格样式丢失的解决办法

背景:识别图片表格并录入excel后导致原文件单元格样式丢失

重点部分:

wb = load_workbook('3008312-2023.07.11.xlsx')
ws = wb.active
......
wb.save('3008312-2023.07.11.xlsx')

完整代码

import cv2
import numpy as np
import pandas as pd
import easyocr
import time
import matplotlib.pyplot as plt
from openpyxl import load_workbook

import openpyxl

start_time = time.time()
image = cv2.imread('2.png')
ocr = easyocr.Reader(['en'], gpu=False,
                     model_storage_directory=r'D:\anaconda3\envs\gupiao\Lib\site-packages\easyocr\model')
# 识别图片文字
img_data=[]  #用来储存识别的数字
text1 = ocr.readtext(image)
for i in range(0,len(text1)):
    # print(text1[i][1])
    value_str = text1[i][1].replace(',', '')
    img_data.append(float(value_str))
print(img_data)



wb = load_workbook('3008312-2023.07.11.xlsx')

# 选择活动工作表,默认是第一个工作表
ws = wb.active



# 循环遍历特定行
for i in range(7, 47):
    # 获取单元格引用
    cell = ws.cell(row=i + 1, column=11)  # openpyxl中行和列索引从1开始

    # 检查单元格是否为空
    if cell.value is None:
        # 赋值,这里假设img_data[0]是你要填充的值
        cell.value = img_data[0]
        del img_data[0]

# 保存工作簿,这一步会覆盖原始文件
wb.save('3008312-2023.07.11.xlsx')
end_time = time.time()
run_time = end_time - start_time

print(f"程序运行时间:{run_time} 秒")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值