埃及国家身份证验证器和数据提取器AP
national-id的Python项目详细描述
埃及国家身份验证和数据提取器API
要求
- python3.6或更高版本
- pip3
- 瓶子
怎么跑
- 安装要求
pip3 install -r requirements.txt
- 运行
python3 server.py
- 服务器将在端口8001上运行
- 可以在http://localhost:8001/get_info处到达终结点
终结点
/get_info
- 在
接受带有“Content-Type:application/json”头的post请求
- 在
请求示例:
curl -H "Content-Type: application/json" -d '{"id_number": "29009121201812"}' -XPOST http://localhost:8001/get_info
在
- 在
- 在
回应
- 200行,json_info:国家标识已验证,信息提取正常
- 400错误请求:错误的国家身份证号码
- 500内部服务器错误:来自用户的无效请求(无效的json,无效的数据格式)
回答示例:
^{pr2}$ 在
- 在
验证和检查
国民身份证由以下内容组成:
+-+--+--+--+--+----+-+ |2|90|01|01|12|3456|7| +--------------------+ |A|B |C |D |E | F |G| +-+--+--+--+--+----+-+
- A->;世纪:A=2来自(1900-1999),A=3来自(2000-2099)
- 出生日期: 出生年份 出生月份 出生日期
- E->;省代码ex:{12:“Al-Daqhlia”}
- F->;唯一代码。(奇数为男性,偶数为女性)
- G->;验证用校验位
如何运行测试
- Lib测试:
pytest -s tests/test_national_id.py
- 测试端点
python3 -m pytest -s tests/test_endpoint.py
Dockerfile文件
- 您可以在
docker directory
中构建并运行dockerfiledocker build -t waleedhammam/national_id .
Pip可安装
- 在
Library national id是pip可安装的
在pip install national-id
,用于整个系统 - 在
用法示例:
fromlib.national_idimportNationalIDinstance=NationalID("28510291201512")instance.get_info()Out:(True,{'year_of_birth':'1985','month_of_birth':'10','day_of_birth':'29','governorate':'Al Daqhlia','type':'Male'})
在
- 项目
标签: