读取身份证信息

本文介绍新中新二代身份证前后台取值 (注:因后期项目需扔到服务器上,无法调用本地服务,因此建议前端取身份证数据)

下载身份证读卡驱动、webapi读卡服务,链接地址:https://pan.baidu.com/s/1cCxuyein-3eY9AnQ7w7nxQ 

(若百度网盘被禁止,可到官网上下载    官网地址:https://www.onecardok.com.cn/index

1.后台取身份证数据  

String url = "https://localhost:9199/api/ReadMsg";

public static String sendGet(String url){
        String result="";//访问返回结果
        BufferedReader read=null;//读取访问结果

        try {
            //创建url
            URL realurl=new URL(url);
            //打开连接
            URLConnection connection=realurl.openConnection();
            // 设置通用的请求属性
            connection.setRequestProperty("accept", "*/*");
            connection.setRequestProperty("connection", "Keep-Alive");
            connection.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
            //建立连接
            connection.connect();
            // 获取所有响应头字段
            Map<String, List<String>> map = connection.getHeaderFields();
            // 遍历所有的响应头字段,获取到cookies等
            for (String key : map.keySet()) {
                System.out.println(key + "--->" + map.get(key));
            }
            // 定义 BufferedReader输入流来读取URL的响应
            read = new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));
            String line;//循环读取
            while ((line = read.readLine()) != null) {
                result += line;
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally{
            if(read!=null){//关闭流
                try {
                    read.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return result;
    }

2.前台取身份证数据  

当读卡驱动读到身份证信息,webapi服务起来后,前台只需读取 https://localhost:9199/api/ReadMsg 则可取到相关的身份信息

 (注:若读卡驱动与webapi服务有冲突时,请到官网下载低版本的webapi  即可解决)

 

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用OpenCV2读取身份证信息,需要先对身份证进行图像处理和文本识别。以下是一些步骤: 1. 使用OpenCV2库加载身份证图像。 2. 对身份证图像进行预处理,包括调整图像大小、图像灰度化和二值化,以便于字符识别。 3. 使用OCR(光学字符识别)库进行文本识别,从图像中识别出身份证上的姓名、性别、民族、出生日期、住址和身份证号码等信息。 4. 解析身份证信息,提取出需要的字段,并将其保存到变量或数据库中。 下面是一个简单的示例代码,可以读取身份证图像并识别出姓名、性别和民族: ```python import cv2 import pytesseract # 加载身份证图像 img = cv2.imread('id_card.jpg') # 调整图像大小 img = cv2.resize(img, (720, 480)) # 图像灰度化和二值化 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) _, binary = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY) # OCR识别 text = pytesseract.image_to_string(binary, lang='chi_sim') # 解析身份证信息 name = text[text.find('姓名')+2:text.find('性别')] gender = text[text.find('性别')+2:text.find('民族')] nation = text[text.find('民族')+2:text.find('出生')] print('姓名:', name) print('性别:', gender) print('民族:', nation) ``` 需要注意的是,这只是一个简单的示例代码,并不能保证对所有身份证图像都有效。对于一些复杂的图像,可能需要更复杂的处理方法和更准确的OCR算法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值