ShowAPI,自营为主的数据交易市场
立即注册

OCR身份证识别

提供者: 易源官方 全部收费

上传身份证图片,来识别图片中的姓名、性别、身份证号码、地址、发证机关、有效期等信息

浏览量:782

调用量:645080

使用人数:58

点赞:12

申请使用 查看演示
文档 授权签名(重要) 联系信息 价格一览表 接口演示
接入点列表
OCR身份证识别
资源列表
·SDK及代码示例
规则中心
·名词解释
·常见问题

接入点说明

身份证识别

请求URL地址

http://route.showapi.com/1429-1
注意:接口支持https,更安全,但稍慢一些,你懂的。请根据自己的情况进行选择。

请求参数

HTTP协议,支持GET/POST方法。
非文件上传的POST时,enctype=application/x-www-form-urlencoded。
文件上传的POST时,enctype=multipart/form-data。
1.系统级参数(所有接入点都需要的参数):+点此展开
2.应用级参数(每个接入点有自己的参数):
参数名称 类型 默认值 示例值 必须 描述
imgData String 身份证图片的base64信息
type String 1 身份证的正面或反面,正面1 反面2,默认值为1

返回参数

以JSON格式返回结果。
1.系统级参数(所有接入点都会返回的参数):+点此展开
2.应用级参数(系统级输出参数showapi_res_body字段中的json数据结构):
名称 类型 示例值 描述
name String 姓名
sex String 性别
nationality String 民族
birthday String 生日
addr String 地址
idNo String 身份证号码
headImgBase64 String 身份证图像的base64
depInfo String 签发部门
effDate String 有效期的起止日期
effBeginDate String 签发日期
effEndDate String 有效期的截止日期
ret_code String 0 接口调用是否成功,0为成功,其他为失败
flag String true 业务请求是否成功
msg String 识别成功! 提示信息
  • 请求实例
  • java_sdk
  • 纯java
  • curl
  • php
  • android
  • python
String res=new ShowApiRequest("http://route.showapi.com/1429-1","my_appId","my_appSecret")
           .addTextPara("imgData","")
           .addTextPara("type","1")
           .post();
System.out.println(res);

                  public static void main(String path[]) throws Exception {
									URL u=new URL("http://route.showapi.com/1429-1?showapi_appid=myappid&imgData=&type=&showapi_sign=mysecret");
									InputStream in=u.openStream();
									ByteArrayOutputStream out=new ByteArrayOutputStream();
									try {
										byte buf[]=new byte[1024];
										int read = 0;
										while ((read = in.read(buf)) > 0) {
											out.write(buf, 0, read);
										}
									}  finally {
										if (in != null) {
											in.close();
										}
									}
									byte b[]=out.toByteArray( );
									System.out.println(new String(b,"utf-8"));
							}
						 
						
						//字段值为中文、空格、特殊符号的地方需要做urlencode,编码为utf-8。用js的方式就是:
						//encodeURIComponent('中文')
						//比如"中文"转换后就是%25E4%25B8%25AD%25E6%2596%2587
            curl   "http://route.showapi.com/1429-1?showapi_appid=123&showapi_timestamp=20151214132239&showapi_sign=use_my_sign&imgData=&type=&"
						
						 //md5签名方式--非简单签名
               			<?php
							header("Content-Type:text/html;charset=UTF-8");
							date_default_timezone_set("PRC");
							$showapi_appid = 'xxxxxx';  //替换此值,在官网的"我的应用"中找到相关值
							$showapi_secret = 'xxxxxxxxx';  //替换此值,在官网的"我的应用"中找到相关值 
							$paramArr = array(
							     'showapi_appid'=> $showapi_appid,
								 'imgData'=> "",
								 'type'=> ""
							     //添加其他参数
							);
							
							//创建参数(包括签名的处理)
							function createParam ($paramArr,$showapi_secret) {
							     $paraStr = "";
							     $signStr = "";
							     ksort($paramArr);
							     foreach ($paramArr as $key => $val) {
							         if ($key != '' && $val != '') {
							             $signStr .= $key.$val;
							             $paraStr .= $key.'='.urlencode($val).'&';
							         }
							     }
							     $signStr .= $showapi_secret;//排好序的参数加上secret,进行md5
							     $sign = strtolower(md5($signStr));
							     $paraStr .= 'showapi_sign='.$sign;//将md5后的值作为参数,便于服务器的效验
							     echo "排好序的参数:".$signStr."
\r\n"; return $paraStr; } $param = createParam($paramArr,$showapi_secret); $url = 'http://route.showapi.com/1429-1?'.$param; echo "请求的url:".$url."
\r\n"; $result = file_get_contents($url); echo "返回的json数据:
\r\n"; print $result.'
\r\n'; $result = json_decode($result); echo "
\r\n取出showapi_res_code的值:
\r\n"; print_r($result->showapi_res_code); echo "
\r\n"; ?>
						//以下代码为纯java实现,并未依赖第三方框架,具体传入参数请参看接口描述详情页.
						protected Handler mHandler =  new Handler();
						protected void onCreate(Bundle savedInstanceState) {
								super.onCreate(savedInstanceState);
								setContentView(R.layout.activity_main);
								final TextView txt = (TextView) this.findViewById(R.id.textView1);
								Button myBtn = (Button) this.findViewById(R.id.button1);
								myBtn.setOnClickListener(new OnClickListener() {
									public void onClick(View v) {
										new Thread(){
											//在新线程中发送网络请求
											public void run() {
												String appid="xxx";//要替换成自己的
												String secret="xxxxxxx";//要替换成自己的
												final String res=new ShowApiRequest( "http://route.showapi.com/1429-1", appid, secret)
                    .addTextPara("imgData", "")
                                .addTextPara("type", "")
            .post();
												
												System.out.println(res);
												//把返回内容通过handler对象更新到界面
												mHandler.post(new Thread(){
													public void run() {
														txt.setText(res+"  "+new Date());
													}
												});
											}
										}.start();
										
										
									}
								});
						}

						
#python3.5
from urllib import    request, parse
import json

print('send data....')
showapi_appid="xxxxxxxxxx"  #替换此值
showapi_sign="xxxxxxxxxx"   #替换此值
url="http://route.showapi.com/1429-1"
send_data = parse.urlencode([
    ('showapi_appid', showapi_appid)
    ,('showapi_sign', showapi_sign)
                    ,('imgData', "")
                    ,('type', "")
    
  ])

req = request.Request(url)
try:
       response = request.urlopen(req, data=send_data.encode('utf-8'), timeout = 10) # 10秒超时反馈
except Exception as e:
    print(e)
result = response.read().decode('utf-8')
result_json = json.loads(result)
print ('result_json data is:', result_json)

						

返回实例

{
    "showapi_res_code": 0, 
    "showapi_res_error": "", 
    "showapi_res_body": {
        "msg": "识别成功!", 
        "birthday": "198X-0X-XX", 
        "flag": true, 
        "nationality": "汉", 
        "sex": "男", 
        "name": "王XX", 
        "headImgBase64": "身份证的头像的base64信息", 
        "addr": "湖北省武汉市.....", 
        "ret_code": 0, 
        "idNo": "*********01211122"
    }
}




请求地址 请求参数 返回参数 请求示例 返回示例
接入点列表
OCR身份证识别
  • 即充即用流量包(OCR身份证识别)

一次性礼包

0时间:1年

  • 5次调用
  • 不限调用频率
  • 手机认证 要求
  •  
领取

9.9元100次

9.9 时间:1年

  • 100次调用
  • 不限调用频率
订购套餐

48元500次

48 时间:1年

  • 500次调用
  • 不限调用频率
订购套餐

139元1500次

139 时间:1年

  • 1500次调用
  • 不限调用频率
订购套餐

339元5000次

339 时间:1年

  • 5000次调用
  • 不限调用频率
订购套餐

980元1万5千次

980 时间:1年

  • 15000次调用
  • 不限调用频率
订购套餐

2399元4万次

2399 时间:1年

  • 40000次调用
  • 不限调用频率
订购套餐

4799元10万次

4799 时间:1年

  • 100000次调用
  • 不限调用频率
订购套餐