本文目录一览:
PYTHON如何调取OCR识别模块识别发票并输出到EXCLE?
import qqai
from os import path
from win32com.client import Dispatch
import os
from datetime import datetime
def file_path():
global path_this_file
path_this_file = path.abspath('.') + "\\"
global path_excel
path_excel = path_this_file + '信息导出.xlsx'
global path_pic_file
path_pic_file = path_this_file + '照片'
def get_pic_name():
pic_list = []
for pic in os.listdir(path_pic_file):
pic_path = path_pic_file + '\\' + pic
pic_list.append(pic_path)
return pic_list
def HandwritingOCRImage(filename):
robot = qqai.vision.ocr.HandwritingOCR(app_id, app_key)
useless_list = ['登记表']
value_list = []
with open(filename, 'rb') as image_file:
result = robot.run(image_file)
item_list = result['data']['item_list']
for value in item_list:
words= value['itemstring']
if words in useless_list:
continue
else:
value_list.append(words)
return value_list
def get_useful_list(value_list):
key_list = ['姓名', '性别', '出生日期', '国家/地区', '民族', '职业', '手机号码', '固定电话', '证件类型', '证件有效期限', '证件号码', '通讯地址', '邮编']
useful_list = []
for words in value_list:
if words in key_list:
key_index = value_list.index(words)
next_index = key_index + 1
if value_list[next_index] in key_list:
useful_list.append('')
else:
if words == '证件号码':
ID_NUM = "'" + str(value_list[next_index]) #这边是为了避免科学计数法的问题
useful_list.append(ID_NUM)
else:
useful_list.append(value_list[next_index])
else:
continue
return useful_list
def put_into_excel(useful_list):
xl = Dispatch("Excel.Application")
xl.Visible = False # True是显示, False是隐藏
xl.DisplayAlerts = 0
excel_input = xl.Workbooks.Open(path_excel)
sheet = excel_input.Sheets('Sheet1')
max_row = sheet.UsedRange.Rows.Count
values = len(useful_list)
for i in range(values):
sheet.Cells(max_row + 1, i + 1).Value = str(useful_list[i])
excel_input.Save()
excel_input.Close()
xl.quit()
starttime = datetime.now()
"""腾讯AI开放平台 图片识别"""
app_id = '2110179251'
app_key = '******'
"""app_id , app_key 可以自己去腾讯AI开放平台注册,是免费的"""
file_path()
pic_list = get_pic_name()
for filename in pic_list:
value_list =HandwritingOCRImage(filename)
useful_list = get_useful_list(value_list)
put_into_excel(useful_list)
endtime = datetime.now()
total_time = (endtime - starttime).seconds
print("成功录入信息{}条,总共耗时{}秒!".format(len(pic_list),total_time))
怎么生成二维码,支持开发票扫描
可以安装一个扫码通开票软件,配合一个小票打印机就能实现让客户自己扫描二维码开具发票。
安装好的软件先维护好系统信息,当客户消费完之后,商家只需在系统中输入消费经额,点击打印,就能打印出一张带有二维码的小票,商家只需将小票交给客户,客户利用自己微信或是支付宝扫一扫,填入自己的名称和税号,就可以自己完成扫码开具发票。开具的发票也会自动保存到客户的微信卡包里或者支付宝卡包里,对于商家和客户都非常便利。
python提取发票信息发票识别
自己写吗?有点麻烦;开发成本很高,而且接口也不好找。我们公司也有IT团队,本来想着自己开发,后来一算划不来。现在用的费耘发票系统,都是成熟模块,直接集成在公司OA上,现在人员报销自己录发票,手机扫一下信息就录到系统中,我们财务账号这边就能体现完整的台账信息还有电子发票原件,非常方便。
怎么扫描增值税发票?
1、扫描操作:连接好扫描仪,点击认证系统,进去后点击发票录入,然后打开扫描仪的盖子,把需要认证的发票扣在扫描仪的最下面(背面向上),同时注意发票扣在最下面也要注意发票的方向,应该是发票的抬头在朝向扫描仪的最下面边框。放好发票后即点击扫描录入。即生成一个待认证的信,然后逐张扫描。都完成后,退出发票录入,点击上传税务认证,然后等待认证结果,大概过几分钟即可点击接收认证结果。
大概有些需要注意的,扫描时候发票的方向正确很重要,接收认证结果后,如有没有通过认证的发票,最好手工更改错误信息,因为只能上传两次,超过2次就要拿发票去税务认证了。另外认证的时间最好不要在月底那天,最好可以提前。月底系统认证时间比较长,而且出问题也没有太多时间更改。接收认证结果后,要等到月初时候才可以打印出文字的认知通知书来,月底前打印出来的是乱码,只要看认证结果正确即可。
2、你补充的问题还没有遇到过,不能帮你。
以上小弟拙见,希望对你有帮助!