Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息


Posted in Python onMarch 20, 2020

上个星期,大佬分享了一个验证身份证号合法性的库:id_validator,没空去试着用一下看看,今天有点时间,来试着用下这个库。

1、首先,要安装这个库,windows+R键运行cmd,打开命令行窗口,输入下面的命令:

pip install id_validator

Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

2、安装成功后,开始来使用这个库

(1)、首先,输入命令 python:

Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

(2)、接着,引用这个库底下的一个模块,输入命令 from id_validator import validator

Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

(3)、依次输入下面的命令,来看下校验结果,返回False,校验身份证合法性失败,返回True,校验身份证合法性成功:

validator.is_valid('440308199901111512')  #大陆18位身份证

validator.is_valid('610104620927690')  #大陆15位身份证

validator.is_valid('810000199408230021') #港澳18位身份证

validator.is_valid('830000199201300022') #台湾18位身份证

Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

(4)、接着,通过这个库底下的某个方法可以获取身份证相关的信息,输入命令:print(validator.get_info('330221199306084914'))

Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息

3、以上就是对验证身份证号合法性的库id_validator的简单介绍。

下面讲解使用身份证验证库id_validator返回住址等信息

440308199901101512 和 610104620927690 示例大陆居民身份证均为随机生成的假数据,如撞车,请联系删除。 810000199408230021 和 830000199201300022 示例港澳台居民居住证为北京市公安局公布的居住证样式号码。

验证身份证号合法性

验证身份证号是否合法,合法返回 True,不合法返回 False:

from id_validator import validator
validator.is_valid('440308199901101512') # 大陆居民身份证 18 位
validator.is_valid('610104620927690')  # 大陆居民身份证 15 位
validator.is_valid('810000199408230021') # 港澳居民居住证 18 位
validator.is_valid('830000199201300022') # 台湾居民居住证 18 位

获取身份证号信息(解析身份证号)

当身份证号合法时,返回分析信息(地区、出生日期、星座、生肖、性别、校验位),不合法返回 False:

from id_validator import validator
validator.get_info('440308199901101512') # 18 位
validator.get_info('610104620927690')  # 15 位

返回信息格式如下:

{

'address_code'   : '440308',                   # 地址码

'abandoned'      : 0,                          # 地址码是否废弃,1 为废弃的,0 为正在使用的

'address'        : '广东省深圳市盐田区',          # 地址

'address_tree'   : ['广东省', '深圳市', '盐田区'] # 省市区三级列表

'birthday_code'  : '1999-01-10',               # 出生日期

'constellation'  : '摩羯座',                    # 星座

'chinese_zodiac' : '卯兔',                      # 生肖

'sex'            : 1,                          # 性别,1 为男性,0 为女性

'length'         : 18,                         # 号码长度

'check_bit'      : '2'                         # 校验码

}

本文主要讲解了身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址等信息,更多关于Python开发技巧请查看下面的相关链接

Python 相关文章推荐
python使用装饰器和线程限制函数执行时间的方法
Apr 18 Python
Python的Django框架可适配的各种数据库介绍
Jul 15 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
python matplotlib 注释文本箭头简单代码示例
Jan 08 Python
对python中的for循环和range内置函数详解
Apr 17 Python
python如何发布自已pip项目的方法步骤
Oct 09 Python
python 实现一个反向单位矩阵示例
Nov 29 Python
python3读取autocad图形文件.py实例
Jun 05 Python
python实现网页录音效果
Oct 26 Python
Django自带用户认证系统使用方法解析
Nov 12 Python
如何用 Python 制作 GitHub 消息助手
Feb 20 Python
总结Pyinstaller打包的高级用法
Jun 28 Python
python实现FTP文件传输的方法(服务器端和客户端)
Mar 20 #Python
python实现ftp文件传输系统(案例分析)
Mar 20 #Python
关于Python 中的时间处理包datetime和arrow的方法详解
Mar 19 #Python
JetBrains PyCharm(Community版本)的下载、安装和初步使用图文教程详解
Mar 19 #Python
Python文件操作基础流程解析
Mar 19 #Python
Python函数基本使用原理详解
Mar 19 #Python
Python ATM功能实现代码实例
Mar 19 #Python
You might like
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
php中定义网站根目录的常用方法
2010/08/08 PHP
php excel reader读取excel内容存入数据库实现代码
2012/12/06 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
PHP使用SOAP扩展实现WebService的方法
2016/04/01 PHP
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
javascript下查找父节点的简单方法
2007/08/13 Javascript
js绘制圆形和矩形的方法
2015/08/05 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
基于jquery实现三级下拉菜单
2016/05/10 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
微信小程序 form组件详解及简单实例
2017/01/10 Javascript
通过npm引用的vue组件使用详解
2017/03/02 Javascript
Vue 进阶教程之v-model详解
2017/05/06 Javascript
JavaScript实现的DOM树遍历方法详解【二叉DOM树、多叉DOM树】
2018/05/07 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
2018/09/29 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
Python聚类算法之基本K均值实例详解
2015/11/20 Python
一个基于flask的web应用诞生 记录用户账户登录状态(6)
2017/04/11 Python
Python2.X/Python3.X中urllib库区别讲解
2017/12/19 Python
在python带权重的列表中随机取值的方法
2019/01/23 Python
Django models.py应用实现过程详解
2019/07/29 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
Python 3.6打包成EXE可执行程序的实现
2019/10/18 Python
python3中numpy函数tile的用法详解
2019/12/04 Python
python列表推导和生成器表达式知识点总结
2020/01/10 Python
pandas数据分组groupby()和统计函数agg()的使用
2021/03/04 Python
面向对象编程是如何提高软件开发水平的
2014/05/06 面试题
同步和异步有何异同,在什么情况下分别使用他们?
2012/12/28 面试题
硕士研究生求职自荐信范文
2014/03/11 职场文书
《永远的白衣战士》教学反思
2014/04/25 职场文书
中学生演讲稿
2014/04/26 职场文书
应聘教师求职信
2014/07/19 职场文书
创优争先心得体会
2014/09/11 职场文书
逃课检讨书
2015/01/26 职场文书
小学教师工作总结2015
2015/04/07 职场文书