同步操作将从 皮球爸爸/Invoice 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
电子发票(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黑名单等)
增加在线预览PDF和OFD文件的demo,启动服务后,访问首页即可 http://localhost:9088/ 具体实现方式请查看源码
更多说明:
预览pdf使用pdf.js,相关源码请到github搜索该开源项目
预览ofd使用ofd.js,相关源码请到github搜索该开源项目,需要说明的是,该项目前端用的VUE,本人才疏学浅,VUE用的不多,对ofd.js发布后的内容进行了一些修改,进而可以在普通的html项目中使用。更多用法诸如ofd转pdf可以参考原项目的实现。
近期国家在推专票电子化,开出的发票慢慢也都会由纸票转为电票,比如餐票、加油费、高速费等。
开源出来的代码,大家作为学习或者参考的例子使用可以,但是还不具备直接用于生产环境。对于各种类型文件的解析存在的问题有:
-ofd 格式,是最简单的,只要解压缩读取数据即可
-pdf 格式, 文件跟开发票方有关系,大部分票用本项目中的代码可以解析,但是有一些票的文字格式,不太标准,解析会有问题,像这种情况就需要单独对代码优化。 不过有一类票目前不太好处理,就是类似“套打”生成的pdf,黄色文字是模板,无法通过上述程序解析,只能解析到填充的黑色文字内容。这种情况目前还没有太好的办法, 如果大家有好办法也可以告诉我。当前我能想到的就是整个发票转为图片后,使用OCR图片识别处理。
jpg/png 格式,对于图片目前腾讯、百度都有识别接口,只是需要费用。如果有免费的识别算法,也可告诉我或者留言分享。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。