Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
作者:茕夜 发布时间:2022-08-08 04:10:31
上个星期,大佬分享了一个验证身份证号合法性的库:id_validator,没空去试着用一下看看,今天有点时间,来试着用下这个库。
1、首先,要安装这个库,windows+R键运行cmd,打开命令行窗口,输入下面的命令:
pip install id_validator
2、安装成功后,开始来使用这个库
(1)、首先,输入命令 python:
(2)、接着,引用这个库底下的一个模块,输入命令 from id_validator import validator
(3)、依次输入下面的命令,来看下校验结果,返回False,校验身份证合法性失败,返回True,校验身份证合法性成功:
validator.is_valid('440308199901111512') #大陆18位身份证
validator.is_valid('610104620927690') #大陆15位身份证
validator.is_valid('810000199408230021') #港澳18位身份证
validator.is_valid('830000199201300022') #台湾18位身份证
(4)、接着,通过这个库底下的某个方法可以获取身份证相关的信息,输入命令:print(validator.get_info('330221199306084914'))
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开发技巧请查看下面的相关链接
来源:https://blog.csdn.net/u012561176/article/details/102856698


猜你喜欢
- 安装request库以火车的站站查询为例的post和get方法的接口测试使用pytest测试接口1、requests的请求机制1、安装req
- 而由于InnoDB是一个健壮的事务型存储引擎,已经有10多年的历史,一些重量级的互联网公司(Yahoo,Google Netease ,Ta
- 示例matplotlib中的animation提供了动态绘图功能,下面列举一个最简单的动态绘制三角函数的例子,来初步演示一下。import
- 说下防止PHPDDOS发包的方法 if (eregi("ddos-udp",$read)) { fputs($verbi
- subplot函数介绍matplotlib下, 一个 Figure 对象可以包含多个子图(Axes), 可以使用 subplot() 快速绘
- 遇到这样一个需求,有一张表,要给这张表新增一个字段delta,delta的值等于每行的c1列的值减去上一行c1列的值。我的解决方案,可以通过
- 前言刚刚看了EuroPython 2017一篇演讲,Why You Don't Need Design Patterns in Py
- 前言多线程一般用于同时调用多个函数,cpu时间片轮流分配给多个任务。 优点是提高cpu的使用率,使计算机减少处理多个任务的总时间;缺点是如果
- 1. 首先介绍pip常用命令pip安装命令: pip install package_name pip升级命令:pip install –u
- 前言ORDER BY 字段名 升序/降序,相信进来的朋友都认识这个排序语句,但遇到一些特殊的排序,单单使用字段名就无法满足需求了,下面给大家
- 在SQL Server中,如果我想授予一个用户klb拥有创建表的权限,但是我又不想授予其数据库角色db_ddladmin,因为这样会扩大其权
- 将数据库中的信息存储至XML文件中:save.asp<!-- #include file="adovbs
- 下面的查询选择所有 date_col 值在最后 30 天内的记录。 mysql> SELECT something FROM tbl_
- EXCEL的数值排序功能还是挺强大的,升序、降序,尤其自定义排序,能够对多个字段进行排序工作。那么,在Python * 中,有没有这样强大的排
- css usage是一个基于firebug的firefox扩展,可以用来查看页面中的CSS的使用情况,可以清楚的查看css文件中所有的规则在
- 1. 问题使用PyCharm 创建完Django 项目 想登录admin 页面 却不知道用户名和密码。 用的默认sqlit2.解决办法2.1
- Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问.我的Mysql环境是ubuntu+mysql51.修改/etc/m
- 本文实例讲述了Python抓取某只基金历史净值数据。分享给大家供大家参考,具体如下:http://fund.eastmoney.com/f1
- 最近没事,写了个在项目经常要取城市或省份名的方法,所以改成了一个类.方便以后调用//****************************
- MySQL是Web世界中使用最广泛的数据库服务器。SQLite的特点是轻量级、可嵌入,但不能承受高并发访问,适合桌面和移动应用。而MySQL