本文介绍了卡证核身方案纯服务端集成的Python SDK调用示例。

前提条件

安装SDK

关于Python SDK源代码,请参见Python SDK
pip install alibabacloud_cloudauth20200618==1.0.3

示例

  • 方式一:不使用本地证件示例
    from alibabacloud_cloudauth20200618.client import Client
    from alibabacloud_cloudauth20200618.models import ElementSmartVerifyRequest
    from alibabacloud_oss_util.models import RuntimeOptions
    from alibabacloud_tea_rpc.models import Config
    
    # 通过以下代码创建Config实例并初始化。
    config = Config()
    # 您的AccessKey ID。
    config.access_key_id = 'AccessKey'
    # 您的AccessKey Secret。
    config.access_key_secret = 'AccessSecret'
    # 设置region_id,region_id为固定值。
    config.region_id = 'cn-hangzhou'
    # 设置endpoint,endpoint为固定值。
    config.endpoint = 'cloudauth.aliyuncs.com'
    # 设置http代理。
    # config.http_proxy = 'http://xxx.xxx.xxx.xxx:9999'
    # 设置https代理。
    # config.https_proxy = 'https://username:password@xxx.xxx.xxx.xxx:9999'
    client = Client(config)
    
    # 通过以下代码创建Runtime实例并设置运行参数。
    runtime_option = RuntimeOptions()
    # 设置不自动重试。
    runtime_option.autoretry = False
    # 设置连接超时时间(单位ms)。
    runtime_option.connect_timeout = 10000
    # 设置调用超时时间(单位ms)。
    runtime_option.read_timeout = 10000
    
    # 通过以下代码创建API请求并设置参数。
    request = ElementSmartVerifyRequest()
    request.scene_id = 200xxxx
    request.outer_order_no = '商户请求的唯一标识'
    # 模式。
    request.mode = 'OCR_VERIFY_ID_NAME'
    # 固定值。
    request.cert_type = 'IDENTITY_CARD'
    # request.cert_name = '张三'
    # request.cert_no = '18位身份证号'
    # request.cert_national_emblem_url = 'https://www.aliyun.com/test.jpeg'
    request.cert_url = 'https://www.aliyun.com/test.jpeg'
    
    # 通过以下代码发起请求并处理应答和异常。
    try:
        response = client.element_smart_verify(request, runtime_option)
        print(response.request_id)
        print(response.code)
        print(response.message)
        print(response.result_object.passed)
        print(response.result_object.certify_id)
        print(response.result_object.sub_code)
        print(response.result_object.material_info)
    except BaseException as e:
        print(e)
  • 方式二:使用本地证件示例
    from alibabacloud_cloudauth20200618.client import Client
    from alibabacloud_cloudauth20200618.models import ElementSmartVerifyAdvanceRequest
    from alibabacloud_oss_util.models import RuntimeOptions
    from alibabacloud_tea_rpc.models import Config
    
    # 通过以下代码创建Config实例并初始化。
    config = Config()
    # 您的AccessKey ID。
    config.access_key_id = 'AccessKey'
    # 您的AccessKey Secret。
    config.access_key_secret = 'AccessSecret'
    # 设置region_id,region_id为固定值。
    config.region_id = 'cn-hangzhou'
    # 设置endpoint,endpoint为固定值。
    config.endpoint = 'cloudauth.aliyuncs.com'
    # 设置http代理。
    # config.http_proxy = 'http://xxx.xxx.xxx.xxx:9999'
    # 设置https代理。
    # config.https_proxy = 'https://username:password@xxx.xxx.xxx.xxx:9999'
    client = Client(config)
    
    # 通过以下代码创建Runtime实例并设置运行参数。
    runtime_option = RuntimeOptions()
    # 设置不自动重试。
    runtime_option.autoretry = False
    # 设置连接超时时间(单位ms)。
    runtime_option.connect_timeout = 10000
    # 设置调用超时时间(单位ms)。
    runtime_option.read_timeout = 10000
    
    # 通过以下代码创建API请求并设置参数。
    request = ElementSmartVerifyAdvanceRequest()
    request.scene_id = 200xxxx
    request.outer_order_no = '商户请求的唯一标识'
    # 模式。
    request.mode = 'OCR_VERIFY_ID_NAME'
    # 固定值。
    request.cert_type = 'IDENTITY_CARD'
    # request.cert_name = '张三'
    # request.cert_no = '18位身份证号'
    # request.cert_national_emblem_url = 'https://www.aliyun.com/test.jpeg'
    file = open('本地文件路径', 'rb')
    request.cert_file_object = file
    
    # 通过以下代码发起请求并处理应答和异常。
    try:
        response = client.element_smart_verify_advance(request, runtime_option)
        print(response.request_id)
        print(response.code)
        print(response.message)
        print(response.result_object.passed)
        print(response.result_object.certify_id)
        print(response.result_object.sub_code)
        print(response.result_object.material_info)
    except BaseException as e:
        print(e)
    
    # 关闭资源。
    file.close()