python基于百度智能云实现批量身份证信息识别(附完整代码,可直接使用)

本文介绍了如何使用百度智能云的身份证文字识别API,通过Python实现批量处理身份证图片,提取信息并生成Excel表格。首先,需要在百度智能云创建应用并获取client_id和client_secret,然后领取免费资源。接着,编写Python代码,包括获取AccessToken、调用API识别身份证信息、批量处理图片和写入Excel。最后,提供了一个完整的类`ID_OCR`,包含了整个处理流程,只需传入必要参数即可运行。

百度智能云配置

一、登录

登录百度智能云,找到卡证文字识别,点击立即使用

地址: https://cloud.baidu.com/product/ocr_cards

二、创建应用

创建一个应用,过程不再赘述,关键是要拿到 client_id  client_secret,后面要用到

 三、领取免费资源

百度智能云的接口是收费的,但是那是对于数量大的情况,这种平时小打小闹的,领取一个免费的资源就够用了,如果没有实名认证是一个月200次,做了实名认证是一个月1000次,足够了

 首页这边就可以领取免费的资源根据自己的需求就可以领取相应的额度,需要注意的是领取过后大概需要十多分钟额度才能到账


编码

一切准备就绪,开搞开搞

一、单张图片处理

1.、获取Access Token

根据本文第一部分记录的 client_id  client_secret,获取token

官方api文档:

# encoding:utf-8
import requests 

# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
response = requests.get(host)
if response:
    print(response.json())

上面print出来的还不直接是Access Token,得再从里面取出来,才是我们要的东西

response.json().get("access_token")

2、调用API

根据获取到的token,调用身份证文字识别的api

官方api文档:

# encoding:utf-8

import requests
import base64

'''
身份证识别
'''

request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/idcard"
# 二进制方式打开图片文件
f = open('[本地文件]', 'rb')
img = base64.b64encode(f.read())

params = {"id_card_side":"front","image":img}
access_token = '[调用鉴权接口获取的token]'
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
if response:
    print (response.json())

需要注意的是,里面的params必传参数有两个,

其中一个是"id_card_side","front"为正面,"ba

评论 15
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值