python - 如何将专门找到的 (OCR) 文本添加到列表中并将其写入 excel 文件?[pytesseract]
问题描述
我想通过 pytesseract 从许多 PNG/JPEG 文件中提取某些信息,并尽可能将它们写入 excel 文件。
我已经想出了如何从图片中提取文字,但我还没有想出的是:
1)我如何提取特定信息而不是一整串单词?例如,我想要每张照片的帐号和参考号,仅此而已。
2)我如何将这些帐号和参考号写入外部文件,如excel?
我将在下面附上我到目前为止所获得的内容:
我听说使用 pandas 数据框是将数据附加到 Excel 列中的好方法,但我不确定我是否可以为这样的任务做到这一点。
from PIL import Image
import pytesseract
import pandas as pd
pytesseract.pytesseract.tesseract_cmd = "C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe"
im = Image.open("C:/Users/user1/desktop/scripts/ocr/example bills/pic.jpg")
content = pd.DataFrame()
text = pytesseract.image_to_string(im, lang= 'eng')
temp = pd.DataFrame({'Words':[text]})
content.append(temp)
content.head()
print(text)
writer = pd.ExcelWriter('wordstest.xlsx')
content.to_excel(writer,'Sheet1')
writer.save()
预期成绩:
一个excel文件,有两列,帐号和参考号。
实际结果:
没有数据的excel文件。
解决方案
要将数据框转换为电子表格,请尝试此操作
content.to_csv('wordstest.csv',sep=',')
这个可以用excel打开。如果您需要更多列,只需将它们添加到数据框,然后写入 csv 文件
推荐阅读
- javascript - 无法保存使用 tinyMCE 中的颜色选择器更改的颜色
- python - 从 UserDict 继承的类的不同实例得到副作用
- laravel - laravel 电子邮件通知问题用队列发送值
- reactjs - React useImperativeRef 在状态更改之前不会更新
- ios - 父视图上的转换覆盖子视图中的动画(按钮)
- android-studio - 了解Android Junit测试的逻辑
- javascript - 反应本地存储身份验证
- python-3.x - Discord Python Bot嵌入值返回函数不是文本
- mysql - 如何使用 MySQL 在数据库的数据池中选择随机数据
- azure-cli - 通过 Azure CLI 单独重启 azure Web 应用实例