def autoChecker(text): text = ''.join(text.split(' ')) data = None t = None try: data = TD1CodeChecker(text) t = 'td1' except: try: data = TD2CodeChecker(text) t = 'td2' except: try: data = TD3CodeChecker(text) t = 'td3' except: try: data = MRVACodeChecker(text) t = 'mrva' except: try: data = MRVBCodeChecker(text) t = 'mrvb' except: print(" Error : MRZ valide") return data, t
def test_td1_checker(self): mrz_td1 = ("IDLIEID98754015<<<<<<<<<<<<<<<\n" "8205122M1906224LIE<<<<<<<<<<<6\n" "OSPELT<BECK<<MARISA<<<<<<<<<<<") td1_check = TD1CodeChecker(mrz_td1) self.assertTrue(bool(td1_check))
def test_td1_checker(self): mrz_td1 = ("IDSRB95555554612902968000000<<\n" "6802295F1307245SRB<<<<<<<<<<<6\n" "TEST<<MILICA<<<<<<<<<<<<<<<<<<") td1_check = TD1CodeChecker(mrz_td1) self.assertTrue(bool(td1_check))
def test_b_td1_checker(self): # WARNINGS 2: mrz_code = ("IDSRB95555554612902968000000<<\n" "6802295F1907245SRB<<<<<<<<<<<6\n" "TEST<<<<<<<<<<<<<<<<<<<<<<<<<<") test = TD1CodeChecker(mrz_code, check_expiry=True) warnings = ['document expired', 'only one identifier'] self.assertListEqual(warnings, test.report.warnings)
def test_a_td1_checker(self): # WARNINGS 1: mrz_code = ("IDSRB95555554612902968000000<<\n" "6802295F5007245SRB<<<<<<<<<<<6\n" "DR<TEST<TEST<<MILICA<MILICAAAA") test = TD1CodeChecker(mrz_code, check_expiry=True) warnings = [ 'expiry date greater than 10 years', 'possible truncating', 'Possible not recommended prefix or suffix in identifier' ] self.assertListEqual(warnings, test.report.warnings)
def test_td1_checker(self): mrz_code = ("IDESPBAA000589599999999R<<<<<<\n" "8001014F2501017ESP<<<<<<<<<<<7\n" "ESPANOLA<ESPANOLA<<CARMEN<<<<<") td1_check = TD1CodeChecker(mrz_code) fields = td1_check.fields() self.assertEqual("ESPANOLA ESPANOLA", fields.surname) self.assertEqual("CARMEN", fields.name) self.assertEqual("ESP", fields.country) self.assertEqual("Spain", get_country(fields.country)) self.assertEqual("ESP", fields.nationality) self.assertEqual("Spain", get_country(fields.nationality)) self.assertEqual("800101", fields.birth_date) self.assertEqual("250101", fields.expiry_date) self.assertEqual("F", fields.sex) self.assertEqual("ID", fields.document_type) self.assertEqual("BAA000589", fields.document_number) self.assertEqual("99999999R", fields.optional_data) self.assertEqual("4", fields.birth_date_hash) self.assertEqual("7", fields.expiry_date_hash) self.assertEqual("5", fields.document_number_hash) self.assertEqual("7", fields.final_hash) self.assertEqual("", fields.optional_data_2)
#!/usr/bin/python3 # -*- coding UTF-8 -*- from mrz.checker.td1 import TD1CodeChecker mrz_td1 = ("IDLIEID98754015<<<<<<<<<<<<<<<\n" "8205122M1906224LIE<<<<<<<<<<<6\n" "OSPELT<BECK<<MARISA<<<<<<<<<<<") td1_check = TD1CodeChecker(mrz_td1) if bool(td1_check) == False: print(td1_check.report_falses)
#!/usr/bin/python3 # -*- coding: UTF-8 -*- # Adding mrz to PYTHONPATH to execute this example as script from os.path import dirname, join, pardir, realpath import sys sys.path.append(realpath(join(dirname(__file__), pardir, pardir))) ############################################################# from mrz.checker.td1 import TD1CodeChecker print( bool( TD1CodeChecker("I<SWE59000002<8198703142391<<<\n" "8703145M1701027SWE<<<<<<<<<<<8\n" "SPECIMEN<<SVEN<<<<<<<<<<<<<<<<")))
#!/usr/bin/python3 # -*- coding: UTF-8 -*- # Note for end users: ####################################################################### # # Adding mrz (local) to PYTHONPATH to execute this example as a script without installing mrz # (if it was installed using pip or setup.py the three lines below are not necessary) from os.path import dirname, join, pardir, realpath import sys sys.path.append(realpath(join(dirname(__file__), pardir, pardir))) ############################################################################################## from mrz.checker.td1 import TD1CodeChecker print(TD1CodeChecker("IDESPBAA000589599999999R<<<<<<\n" "8001014F2501017ESP<<<<<<<<<<<7\n" "ESPANOLA<ESPANOLA<<CARMEN<<<<<"))
#!/usr/bin/python3 # -*- coding: UTF-8 -*- from mrz.checker.td1 import TD1CodeChecker def print_report(checker: TD1CodeChecker): print("REPORT") for r in checker.report: print(r[0] + ":" + str(r[1]).rjust(30 - len(r[0]))) print("\nResult:" + str(td1_check).rjust(24).upper()) mrz_td1 = ("I<LVAPA99929216121282<88882<<<\n" "8212122M1703054LVA<<<<<<<<<<<0\n" "PARAUDZINS<<ANDRIS<<<<<<<<<<<<") td1_check = TD1CodeChecker(mrz_td1, check_expiry=True) # Check expiry date as warning # Expiry Date = 170305 print_report( td1_check) # TRUE td1_check.report_warnings = ['document expired'] td1_check = TD1CodeChecker(mrz_td1, check_expiry=True, compute_warnings=True) # Compute warnings as False # Expiry Date = 170305 print_report(td1_check) # FALSE
#!/usr/bin/python3 # -*- coding: UTF-8 -*- from mrz.checker.td1 import TD1CodeChecker mrz_td1 = ("I<MCO029067<<<0<<<<<<<<<<<<<<<\n" "9901018F0903248MCO<<<<<<<<<<<0\n" "SPECIMEN<<SPECIMEN<<<<<<<<<<<<") td1_check = TD1CodeChecker(mrz_td1) print("".ljust(35, "=")) print(td1_check.mrz_code) print("\n") print("Result:", bool(td1_check)) print("Falses:", td1_check.report_falses) print("Warnings:", td1_check.report_warnings) print("".ljust(35, "=")) print(td1_check.mrz_code) print("\n") td1_check = TD1CodeChecker(mrz_td1, check_expiry=True, compute_warnings=True) print("Result:", bool(td1_check)) print("Falses:", td1_check.report_falses) print("Warnings:", td1_check.report_warnings)
#!/usr/bin/python3 # -*- coding: UTF-8 -*- # Adding mrz path to PYTHONPATH to execute the example as script from os.path import dirname, join, pardir, realpath import sys sys.path.append(realpath(join(dirname(__file__), pardir, pardir))) ################################################################## from mrz.generator.td1 import TD1CodeGenerator from mrz.checker.td1 import TD1CodeChecker import examples.functions.functions as functions mrz = str(TD1CodeGenerator("I", "LTU", "11810187", "201123", "F", "300101", "LTU", "BASANAVIČIENĖ", "BIRUTĖ", "46411231034")) td1_check = TD1CodeChecker(mrz) print(td1_check) td1_check = TD1CodeChecker(mrz, check_expiry=True) if not bool(td1_check): print("FALSE:") print(td1_check.report_falses) functions.open_image("id_cards", "Lithuania.png")