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

keras 5月前 343

### 发票查验验证码识别模型

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


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

### Python识别代码如下:

```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代码如下,是不是很简单呢,欢迎白嫖。

```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)
返回