埃及国家身份证验证器和数据提取器AP

national-id的Python项目详细描述


埃及国家身份验证和数据提取器API

{1}$ Actions Statuscodecov.io

要求

  • 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中构建并运行dockerfile docker 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'})

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使图像以正确的速度在屏幕上移动,以适应所有显示   内存Java分配:从预先存在/分配的池中分配对象   java这种书写方式?   Java正则表达式查找字符串的开头   java是否可以创建一个类来处理安卓中的所有日志代码(例如log.d(TAG,message))   如何使用Selenium和java单击WebTable任意页面上的WebElement   java解析字符串中的文件名   java刷新JTree内容   java如何覆盖RequestMappingHandler   爪哇数石头、布、剪刀赢了多少   struts中的java无效令牌   swing JTree,优化算法,Java   java Tomcat和SSL:密钥库格式无效