Python调用腾讯云实名认证接口验证身份证信息
本文详细介绍如何使用Python调用腾讯云实名认证接口来验证身份证与姓名的一致性。通过获取SecretId和SecretKey,构建签名并发送HTTP请求,程序可返回认证结果。若返回description为“一致”,则表明身份证与姓名匹配,认证通过;否则认证失败。
Python调用腾讯云实名认证接口指南
本文主要介绍如何调用腾讯云的实名认证接口。
首先需要点击链接免费获取该产品服务。
from __future__ import print_function
import ssl, hmac, base64, hashlib
from datetime import datetime as pydatetime
try:
from urllib import urlencode
from urllib2 import Request, urlopen
except ImportError:
from urllib.parse import urlencode
from urllib.request import Request, urlopen
# 云市场分配的密钥Id
secretId = "**购买后多得到的ID**"
# 云市场分配的密钥Key
secretKey = "**购买后得到的Key**"
source = "**用户名**"
# 签名
datetime = pydatetime.utcnow().strftime('%a, %d %b %Y %H:%M:%S GMT')
signStr = "x-date: %s\nx-source: %s" % (datetime, source)
sign = base64.b64encode(hmac.new(secretKey.encode('utf-8'), signStr.encode('utf-8'), hashlib.sha1).digest())
auth = 'hmac id="%s", algorithm="hmac-sha1", headers="x-date x-source", signature="%s"' % (
secretId, sign.decode('utf-8'))
# 请求方法
method = 'GET'
# 请求头
headers = {
'X-Source': source,
'X-Date': datetime,
'Authorization': auth,
}
ID_card = input('请输入你的身份证信息:')
ID_name = input('请输入你的姓名:')
# 查询参数
queryParams = {
"idcard":ID_card,
"name": ID_name}
# body参数(POST方法下存在)
bodyParams = {
}
# url参数拼接
url = 'https://service-2n5qa8cl-1256140209.ap-shanghai.apigateway.myqcloud.com/release/eid/check'
if len(queryParams.keys()) > 0:
url = url + '?' + urlencode(queryParams)
request = Request(url, headers=headers)
request.get_method = lambda: method
if method in ('POST', 'PUT', 'PATCH'):
request.data = urlencode(bodyParams).encode('utf-8')
request.add_header('Content-Type', 'application/x-www-form-urlencoded')
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
response = urlopen(request, context=ctx)
content = response.read()
if content:
print(content.decode('utf-8'))
以下是运行后的结果展示:

当返回的“description”字段值为“一致”时,表示身份证号码与姓名匹配,即认证通过;反之则认证不通过。
以上是关于使用Python调用腾讯云身份证实名认证接口进行身份真伪辨别的全部内容,更多关于该接口的详细信息,请持续关注本站的其他相关文章。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









