0
点赞
收藏
分享

微信扫一扫

python 身份证工具

您好 2024-07-24 阅读 18

介绍:

       可以解析身份证,获取身份证的省,市,区信息,年龄,性别,生日信息

import re
from datetime import datetime
import json

class IDCardParserUtil:

    def __init__(self):
        pass

    # 身份证号码前6位对应省市区编码
    id_card_area_codes = {

    }

    @staticmethod
    def parseIdCard(id_card):
        # 从文件加载身份证号码前6位对应省市区编码
        with open('../files/id_card_area_codes.json', 'r', encoding='utf-8') as f:
            IDCardParserUtil.id_card_area_codes =json.load(f)
        # 定义身份证号码的正则表达式模式
        pattern = r'^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$'

        # 使用正则表达式匹配身份证号码
        if not re.match(pattern, id_card):
            raise ValueError("身份证号码格式不正确 id_card: "+id_card)

        # 提取前6位作为省市区编码
        area_code = id_card[:6]
        province = IDCardParserUtil.id_card_area_codes.get(area_code[:2] + &
举报

相关推荐

0 条评论