python实现发票二维码解析


通过发票左上角的二维码信息,获取发票的关键信息,只需将图片格式的电子发票或扫描后的发票图片传入即可.
测试结果如下:

  • 增值税电子普通发票:{'发票代码': '031******311', '发票号码': '74****17', '不含税金额': '13665.98', '开票日期': '20210119', '校验码': '1687***********768'}
  • 增值税专用发票:{'发票代码': '310****130', '发票号码': '53****64', '不含税金额': '2949.02', '开票日期': '20210614', '校验码': ''}
from pyzbar import pyzbar
from PIL import Image


def parse_invoice_info(picture):
    """
    发票二维码解析,获取关键信息
    :param picture: 发票图片
    :return: dict
    """
    invoice_info = {}
    img = Image.open(picture)

    # 解析二维码的数据
    results = pyzbar.decode(img)

    for result in results:
        text_list = result.data.decode('utf-8').split(',')
        invoice_info['发票代码'] = text_list[2]
        invoice_info['发票号码'] = text_list[3]
        invoice_info['不含税金额'] = text_list[4]
        invoice_info['开票日期'] = text_list[5]
        invoice_info['校验码'] = text_list[6]
    return invoice_info


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM