|
3 | 3 | from regula.documentreader.webclient import * |
4 | 4 |
|
5 | 5 | host = os.getenv("API_BASE_PATH", "https://api.regulaforensics.com") |
6 | | -regula_license = os.getenv("TEST_LICENSE", None) # optional, used here only for smoke test purposes |
7 | 6 |
|
8 | 7 | # read optional local license file |
9 | 8 | if os.path.isfile('regula.license') and os.access('regula.license', os.R_OK): |
|
21 | 20 | uv_page_0 = f.read() |
22 | 21 |
|
23 | 22 | with DocumentReaderApi(host) as api: |
24 | | - api.license = regula_license |
25 | | - |
26 | | - params = ProcessParams( |
27 | | - scenario=Scenario.FULL_PROCESS, |
28 | | - result_type_output=[ |
29 | | - # actual results |
30 | | - Result.STATUS, Result.AUTHENTICITY, Result.TEXT, Result.IMAGES, |
31 | | - Result.DOCUMENT_TYPE, Result.DOCUMENT_TYPE_CANDIDATES, Result.IMAGE_QUALITY, |
32 | | - Result.DOCUMENT_POSITION, |
33 | | - # legacy results |
34 | | - Result.MRZ_TEXT, Result.VISUAL_TEXT, Result.BARCODE_TEXT, Result.RFID_TEXT, |
35 | | - Result.VISUAL_GRAPHICS, Result.BARCODE_GRAPHICS, Result.RFID_GRAPHICS, |
36 | | - Result.LEXICAL_ANALYSIS |
37 | | - ] |
38 | | - ) |
| 23 | + api.api_client.default_headers = { |
| 24 | + "X-CLIENT-KEY": "123", |
| 25 | + "Authorization": "Bearer 123" |
| 26 | + } |
| 27 | + params = ProcessParams(already_cropped=True, scenario=Scenario.FULL_PROCESS) |
| 28 | + |
| 29 | + # Add license to request |
| 30 | + # request = RecognitionRequest(system_info=ProcessSystemInfo(license=base64.b64encode(regula_license).decode()), process_params=params, images=[ |
| 31 | + # RecognitionImage(image=white_page_0, light_index=Light.WHITE, page_index=0), |
| 32 | + # ]) |
| 33 | + |
39 | 34 | request = RecognitionRequest(process_params=params, images=[ |
40 | 35 | RecognitionImage(image=white_page_0, light_index=Light.WHITE, page_index=0), |
41 | | - RecognitionImage(image=ir_page_0, light_index=Light.IR, page_index=0), |
42 | | - RecognitionImage(image=uv_page_0, light_index=Light.UV, page_index=0), |
| 36 | + # RecognitionImage(image=ir_page_0, light_index=Light.IR, page_index=0), |
| 37 | + # RecognitionImage(image=uv_page_0, light_index=Light.UV, page_index=0), |
43 | 38 | ]) |
44 | 39 | response = api.process(request) |
45 | 40 |
|
|
50 | 45 | response_status = response.status |
51 | 46 | doc_overall_status = "valid" if response_status.overall_status == CheckResult.OK else "not valid" |
52 | 47 |
|
| 48 | + |
53 | 49 | # text fields example |
54 | 50 | doc_number_field = response.text.get_field(TextFieldType.DOCUMENT_NUMBER) |
55 | 51 | doc_number_field_by_name = response.text.get_field_by_name("Document Number") |
|
82 | 78 | f.write(portrait_from_visual) |
83 | 79 | with open('document-image.jpg', 'wb') as f: |
84 | 80 | f.write(document_image) |
85 | | - |
86 | | - print(""" |
| 81 | + print(f""" |
87 | 82 | --------------------------------------------------------------------------- |
88 | | - Web API version: {ping_version} |
| 83 | + Web API version: {api.ping().version} |
89 | 84 | --------------------------------------------------------------------------- |
90 | | - Document Overall Status: {doc_overall_status} |
| 85 | + Document Overall Status: {doc_overall_status} |
91 | 86 | Document Number Visual: {doc_number_visual} |
92 | | - Document Number MRZ: {doc_number_mrz} |
93 | | - Validity Of Document Number Visual: {doc_number_visual_validity} |
94 | | - Validity Of Document Number MRZ: {doc_number_mrz_validity} |
95 | | - MRZ-Visual values comparison: {doc_number_mrz_visual_matching} |
96 | | - --------------------------------------------------------------------------- |
97 | | - """.format( |
98 | | - ping_version=api.ping().version, |
99 | | - doc_overall_status=doc_overall_status, doc_number_visual=doc_number_visual, |
100 | | - doc_number_mrz=doc_number_mrz, doc_number_visual_validity=doc_number_mrz_validity, |
101 | | - doc_number_mrz_validity=doc_number_mrz_validity, doc_number_mrz_visual_matching=doc_number_mrz_visual_matching, |
102 | | - )) |
| 87 | + Document Type: {response.result_by_type(result_type=Result.DOCUMENT_TYPE).one_candidate.document_name} |
| 88 | + Validity Of Document Number Visual: {doc_number_visual_validity} |
| 89 | + """) |
| 90 | + |
| 91 | + print("-----------------------All Text Fields------------------------") |
| 92 | + for field in response.text.field_list: |
| 93 | + print(f"Source: {field.field_name}, Value: {field.value}") |
0 commit comments