国税总局发票查验平台验证码识别模型 学习资源 机器学习 Web逆向 无合适标签 未标注

keras 2月前 294

发票查验验证码识别模型

网站的验证码是数字+字母+汉字,数字就是0~9,字母就是大写的26个英文字母。真实的验证码如下如所示。


背景是类似波浪的的条形图案加一个底色,所以有兴趣的小伙伴可以研究下,自己可以试着写一个生成器出来,当然你也可以使用网上的生成器,但是效果并不怎么好。字体的颜色就是四种,分别为黑色、红色、黄色、和蓝色。这种验证码的难处就在于存在汉字导致训练很难收敛或者就是准确率只有50~60%。这里提供一种识别模型,那就是crnn,当然不一定是最好的,但是很有效,个人通过这种模型测试10000张最高可以达到97%左右的识别率。

Python识别代码如下:

with open('./tmp.jpg', 'rb') as f:
    img_bytes = f.read()
img_base64 = base64.b64encode(img_bytes)
# '00' 黑色 '01' 红色 '02' 黄色 '03' 蓝色
data = {'image': str(img_base64, 'utf-8'), 'key': '01'}
result = requests.post('http://47.99.174.98:8808/captcha', json=data)
print(result.text)
print(result.json())


免验证码查验发票

Python代码如下,是不是很简单呢,欢迎白嫖。

import requests

# fpdm 发票代码 fphm 发票号码 rq 开票日期 jym 校验码后六位

data = {'fpdm': '044001505121', 'fphm': '38507145', 'rq': '20180926', 'jym': '865375'}

result = requests.post('http://47.99.174.98:8808/fp', json=data)

print(result.json())


最新回复 (0)
返回