在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:Invoice开源软件地址:https://gitee.com/kanen/invoice开源软件介绍:invoice介绍电子发票(PDF)识别与验真 1、支持电子发票(PDF)的读取 目前 仅支持普通发票 ,不足以在生产环境使用,如果您想解析其他类型发票可以自行研究,或者在issues中提交讨论。 2、验真 代码中有使用用友apilink的接口验真(0.1~0.2元/次,比较贵) 网上也有其他付费接口,如阿里云市场、乐税网等。价格、稳定性不好说。 通过验证码识别,然后调用国税局官网查询接口这个会有不少坑,等以后有时间再研究。 网上的验证码识别率比较高的,价格在2万左右(源码+训练模型)。 识别原理:1)使用pdfbox提取pdf文本内容,通过正则匹配到部分属性 2)第一步无法获取全部有效的属性信息,通过关键字拿到定位信息,使用定位的区域,通过pdf的区域读取问题,然后再结合正则进一步匹配得到其他有效属性信息。 特别说明:该项目核心识别代码来源于github上的fantasyxxj的einvoice项目,在此基础上做的改动调整,在此感谢。 软件架构springboot pdfbox 安装教程从git导入IDE即可 使用说明参考demo中的电子发票读取 效果如下: 后续计划1、当前已实现功能 pdf的在线预览,pdf通过模板导出,发票的解析与批量导出,自动读取邮箱中的发票 ofd的在线预览,ofd的解析 以上功能均已实现并在项目中应用,暂未脱敏整理出来,有需要可留言沟通 2、发票验真 难点:验证码识别、接口秘钥生成算法(频繁变动)、反爬虫技术等(IP黑名单等) 更新日志2020-11-18增加在线预览PDF和OFD文件的demo,启动服务后,访问首页即可 http://localhost:9088/具体实现方式请查看源码 更多说明: 预览pdf使用pdf.js,相关源码请到github搜索该开源项目 预览ofd使用ofd.js,相关源码请到github搜索该开源项目,需要说明的是,该项目前端用的VUE,本人才疏学浅,VUE用的不多,对ofd.js发布后的内容进行了一些修改,进而可以在普通的html项目中使用。更多用法诸如ofd转pdf可以参考原项目的实现。 2021-12-04近期国家在推专票电子化,开出的发票慢慢也都会由纸票转为电票,比如餐票、加油费、高速费等。 开源出来的代码,大家作为学习或者参考的例子使用可以,但是还不具备直接用于生产环境。对于各种类型文件的解析存在的问题有: -ofd 格式,是最简单的,只要解压缩读取数据即可 -pdf 格式, 文件跟开发票方有关系,大部分票用本项目中的代码可以解析,但是有一些票的文字格式,不太标准,解析会有问题,像这种情况就需要单独对代码优化。不过有一类票目前不太好处理,就是类似“套打”生成的pdf,黄色文字是模板,无法通过上述程序解析,只能解析到填充的黑色文字内容。这种情况目前还没有太好的办法,如果大家有好办法也可以告诉我。当前我能想到的就是整个发票转为图片后,使用OCR图片识别处理。 jpg/png 格式,对于图片目前腾讯、百度都有识别接口,只是需要费用。如果有免费的识别算法,也可告诉我或者留言分享。 |
请发表评论