引言

放假在家闲来无事,看到一个接口,于是想试着用这几天学的Python玩玩,就用Python的urllib2对接了身份证图片识别接口,这里面还有很多关于图片识别类的接口(虽然有些要钱),不过里面文字识别和场景识别还有证件识别是免费的,初尝Python,屡试不爽。

对于Python还在摸索当中,欢迎各位赐教,让我能更好的进步。

版权所有:CSND_Ayo,转载请注明出处:http://blog.csdn.net/csnd_ayo

简介

编程IDE:Pycharm 2016.1.2

开发环境:Python 2.7.13

操作系统:Window 7

接口

Face++ 接口:https://www.faceplusplus.com.cn/

接口协议:HTTP 协议 POST

由于最近有人邮件跟我说,POST老是不响应,原因我看了下,因为是免费用户频繁调用,他们服务器自动屏蔽一段时间,防止恶意调用(说白了就是免费的,休想有优质服务),大家可以自己创建帐号,用自己的密钥和公钥,也许这样会稍微好一点。

赏析

源码

# -*- coding: utf-8 -*-#
# Face++ 身份证图片识别
# 作者:Louie
# 邮箱:727057301@qq.com
# 创建时间:2017年04月01日04:26:48
# Python版本:2.7.13
# CSDN:http://blog.csdn.net/csnd_ayo
#import urllib2
import urllib
import time
import json######################################################################### 协议URL
http_url='https://api-cn.faceplusplus.com/cardpp/v1/ocridcard'
# 公钥
key = "q9LNKjuFDAbUbfh5VG8FEMdJqyVVexM3"
# 密钥
secret = "bYTXhWRlT-DhfCf45dp2R50adZTu8wVd"
# 身份证件地址 支持PNG\JPG格式
filepath = r"F:/project/Python/inteface/python-sdk-master/python-sdk/demo.jpg"
# 参数协议分割标识
boundary = '----------%s' % hex(int(time.time() * 1000))########################################################################
# 制作协议包
data = []
data.append('--%s' % boundary)
data.append('Content-Disposition: form-data; name="%s"\r\n' % 'api_key')
data.append(key)
data.append('--%s' % boundary)
data.append('Content-Disposition: form-data; name="%s"\r\n' % 'api_secret')
data.append(secret)
data.append('--%s' % boundary)
fr=open(filepath,'rb')
data.append('Content-Disposition: form-data; name="%s"; filename="CSND_Ayo.jpg"' % 'image_file')
data.append('Content-Type: %s\r\n' % 'application/octet-stream')
# print data
data.append(fr.read())
fr.close()
data.append('--%s--\r\n' % boundary)######################################################################### 发送POST请求
http_body='\r\n'.join(data)
req=urllib2.Request(http_url)
req.add_header('Content-Type', 'multipart/form-data; boundary=%s' % boundary)
req.add_data(http_body)########################################################################resp = urllib2.urlopen(req, timeout=5)
# 获得结果
qrcont=resp.read()
# 打印结果
json_dict = json.loads(qrcont)
for items in json_dict['cards']:for item in items:if type(items[item]) != int:print ("%s=%s" % (item,items[item]))else:print ("%s=%d" % (item,items[item]))########################################################################

Python利用Face++实现身份证件图片识别相关推荐

  1. DL之CNN:利用卷积神经网络算法(2→2,基于Keras的API-Functional)利用MNIST(手写数字图片识别)数据集实现多分类预测

    DL之CNN:利用卷积神经网络算法(2→2,基于Keras的API-Functional)利用MNIST(手写数字图片识别)数据集实现多分类预测 目录 输出结果 设计思路 核心代码 输出结果 下边两张 ...

  2. 身份证件智能识别处理(IOS/Android)

    一.身份证件智能识别处理(IOS/Android)的应用背景 随着智能终端和4G网络的普及,原来运行在PC上的信息系统(逐渐转移到智能终端设备上.可以预见未来几年80%以上的业务将会逐渐转移到智能终端 ...

  3. python代码示例百度云-python利用百度云接口实现车牌识别的示例

    一个小需求---实现车牌识别. 目前有两个想法 1. 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 2. 自己实现车牌识别算法(复杂) 一开 ...

  4. DL之CNN:利用卷积神经网络算法(2→2,基于Keras的API-Sequential)利用MNIST(手写数字图片识别)数据集实现多分类预测

    DL之CNN:利用卷积神经网络算法(2→2,基于Keras的API-Sequential)利用MNIST(手写数字图片识别)数据集实现多分类预测 目录 输出结果 设计思路 核心代码 输出结果 1.10 ...

  5. ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA)

    ML之DR之PCA:利用PCA对手写数字图片识别数据集进行降维处理(理解PCA) 目录 初步理解PCA 输出结果 核心代码 初步理解PCA #理解PCA:线性相关矩阵秩计算样例 import nump ...

  6. Python+TensorFlow+PyQt实现手写体数字图片识别+GUI界面+画板数字识别

    __pycache__文件夹是Python自动生成的,详细了解https://blog.csdn.net/yitiaodashu/article/details/79023987 其他各个文件在之后部 ...

  7. python 识图点击_Python图片识别找坐标(appium通过识别图片点击坐标)

    ***如果只想了解图片相似度识别,直接看第一步即可 ***如果想了解appium根据图片识别点击坐标,需要看第一.二.三步 背景|在做UI测试时,发现iOS自定义的UI控件,appium识别不到.所以 ...

  8. python 识图点击_Python图片识别——人工智能篇

    一.安装pytesseract和PIL PIL全称:Python Imaging Library,python图像处理库,这个库支持多种文件格式,并提供了强大的图像处理和图形处理能力. 由于PIL仅支 ...

  9. Python 利用4行代码实现图片灰度化

    背景 不论是在进行深度学习时的图片处理,还是在商业用途出版书刊,基本都会用到对图片进行灰度转换,也就是灰度化,本文章利用简单的4行代码来快速实现图片灰度化,仅供参考 效果 实现代码 from PIL ...

最新文章

  1. windows7下vs2008常见错误解决方法汇总
  2. 【杂谈】当当最新购书优惠来了,满300-60,AI好书推荐
  3. highlight js 为博客增加代码着色
  4. why SAP CRM My Opportunity Master page must be renamed as S2
  5. 微信小程序开发---页面生命周期
  6. 如何清空android ListView控件的内容
  7. WCF技术剖析之二十八:自己动手获取元数据[附源代码下载]
  8. 杰富瑞主管:若BTC回落,将增加养老基金投资组合中的加密货币成分
  9. java两年需要,Java 两年总结
  10. Linux下限制用户通过SFTP访问指定目录
  11. HDU 4380 Farmer Greedy 计算几何+bitset
  12. 来,说说什么是运维人的情怀?
  13. h5在线游戏制作开发:h5模板打地鼠小游戏怎么制作?
  14. 洛谷P1867 【Mc生存】经验值
  15. 快速编程的捷径——计算机达人成长之路(40)
  16. 中国超级计算机计算圆周率,圆周率都已算到31.4万亿位,为什么超级计算机还在算圆周率?...
  17. 经典的期货量化交易策略大全(含源代码)
  18. 小括号在c语言的作用,C语言的小括号----其实是逗号运算符
  19. 签名文字头像PSD模板源文件打包3D艺术字贴图创意网红头像-李廷学
  20. CentOS7用YUM方式安装MySQL5.7

热门文章

  1. 阿里云服务器配置(一)基础
  2. IT新人到底该不该去外包公司?
  3. 安装zookeeper看我就行了
  4. Html和Xml中注释符
  5. 两年计算机考研教训经验贴
  6. Python paramiko 模块详解与SSH主要功能模拟
  7. .分享10个最新的Web前端框架
  8. java的关键业绩指标_SpreadJS前端开发案例:如何利用Javasrcipt创建财务关键业绩指标表...
  9. 什么是事件冒泡机制?
  10. S合金元素对不锈钢组织和性能的影响