ocr_process添加try-except处理前半部分
Showing
1 changed file
with
35 additions
and
0 deletions
| ... | @@ -178,6 +178,8 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -178,6 +178,8 @@ class Command(BaseCommand, LoggerMixin): |
| 178 | # self.online_log.info('{0} [edms download success] [pdf_path={1}]'.format(self.log_base, pdf_path)) | 178 | # self.online_log.info('{0} [edms download success] [pdf_path={1}]'.format(self.log_base, pdf_path)) |
| 179 | 179 | ||
| 180 | def bs_process(self, wb, ocr_data, bs_summary, unknown_summary, classify, res_list, pno, ino, part_idx): | 180 | def bs_process(self, wb, ocr_data, bs_summary, unknown_summary, classify, res_list, pno, ino, part_idx): |
| 181 | # 添加 try-except 处理 | ||
| 182 | try: | ||
| 181 | sheets = ocr_data.get('data', []) | 183 | sheets = ocr_data.get('data', []) |
| 182 | if not sheets: | 184 | if not sheets: |
| 183 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) | 185 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) |
| ... | @@ -265,9 +267,14 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -265,9 +267,14 @@ class Command(BaseCommand, LoggerMixin): |
| 265 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) | 267 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) |
| 266 | else: | 268 | else: |
| 267 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) | 269 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) |
| 270 | except Exception as e: | ||
| 271 | res_list.append((pno, ino, part_idx, consts.RES_FAILED)) | ||
| 272 | self.online_log.error('{0} [bs_process error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 268 | 273 | ||
| 269 | def contract_process(self, classify, ocr_data, contract_result, res_list, pno, ino, part_idx, | 274 | def contract_process(self, classify, ocr_data, contract_result, res_list, pno, ino, part_idx, |
| 270 | img_path, contract_result_compare): | 275 | img_path, contract_result_compare): |
| 276 | # 添加 try-except 处理 | ||
| 277 | try: | ||
| 271 | contract_dict = ocr_data.get('data') | 278 | contract_dict = ocr_data.get('data') |
| 272 | if not contract_dict or contract_dict.get('page_num') is None or contract_dict.get('page_info') is None: | 279 | if not contract_dict or contract_dict.get('page_num') is None or contract_dict.get('page_info') is None: |
| 273 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) | 280 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS_EMPTY)) |
| ... | @@ -343,6 +350,8 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -343,6 +350,8 @@ class Command(BaseCommand, LoggerMixin): |
| 343 | contract_result_compare.setdefault(classify, dict())[consts.ASP_KEY] = contract_dict.get(consts.ASP_KEY, False) | 350 | contract_result_compare.setdefault(classify, dict())[consts.ASP_KEY] = contract_dict.get(consts.ASP_KEY, False) |
| 344 | # "position" = [xmin, ymin, xmax, ymax] | 351 | # "position" = [xmin, ymin, xmax, ymax] |
| 345 | contract_result_compare.setdefault(classify, dict())[page_num_only] = page_compare_dict | 352 | contract_result_compare.setdefault(classify, dict())[page_num_only] = page_compare_dict |
| 353 | except Exception as e: | ||
| 354 | self.online_log.error('{0} [contract_process error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 346 | 355 | ||
| 347 | @staticmethod | 356 | @staticmethod |
| 348 | def rebuild_position(src_position): | 357 | def rebuild_position(src_position): |
| ... | @@ -372,6 +381,8 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -372,6 +381,8 @@ class Command(BaseCommand, LoggerMixin): |
| 372 | 381 | ||
| 373 | def license1_process(self, ocr_data, license_summary, classify, res_list, pno, ino, part_idx, img_path, do_dda, | 382 | def license1_process(self, ocr_data, license_summary, classify, res_list, pno, ino, part_idx, img_path, do_dda, |
| 374 | dda_id_bc_mapping): | 383 | dda_id_bc_mapping): |
| 384 | # 添加 try-except 处理 | ||
| 385 | try: | ||
| 375 | # 类别:'0'身份证, '1'居住证 | 386 | # 类别:'0'身份证, '1'居住证 |
| 376 | license_data = ocr_data.get('data') | 387 | license_data = ocr_data.get('data') |
| 377 | if not license_data: | 388 | if not license_data: |
| ... | @@ -713,8 +724,13 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -713,8 +724,13 @@ class Command(BaseCommand, LoggerMixin): |
| 713 | res_dict[consts.SECTION_IMG_PATH_KEY] = section_img_path | 724 | res_dict[consts.SECTION_IMG_PATH_KEY] = section_img_path |
| 714 | license_summary.setdefault(classify, []).extend(license_data) | 725 | license_summary.setdefault(classify, []).extend(license_data) |
| 715 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) | 726 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) |
| 727 | except Exception as e: | ||
| 728 | res_list.append((pno, ino, part_idx, consts.RES_FAILED)) | ||
| 729 | self.online_log.error('{0} [license1_process error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 716 | 730 | ||
| 717 | def license2_process(self, ocr_res_2, license_summary, pid, classify, res_list, pno, ino, part_idx, img_path, do_dda, dda_id_bc_mapping, file_data): | 731 | def license2_process(self, ocr_res_2, license_summary, pid, classify, res_list, pno, ino, part_idx, img_path, do_dda, dda_id_bc_mapping, file_data): |
| 732 | # 添加 try-except 处理 | ||
| 733 | try: | ||
| 718 | if ocr_res_2.get('ErrorCode') in consts.SUCCESS_CODE_SET: | 734 | if ocr_res_2.get('ErrorCode') in consts.SUCCESS_CODE_SET: |
| 719 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) | 735 | res_list.append((pno, ino, part_idx, consts.RES_SUCCESS)) |
| 720 | if pid == consts.BC_PID: | 736 | if pid == consts.BC_PID: |
| ... | @@ -777,9 +793,14 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -777,9 +793,14 @@ class Command(BaseCommand, LoggerMixin): |
| 777 | ' [part_idx={2}]'.format(self.log_base, img_path, part_idx)) | 793 | ' [part_idx={2}]'.format(self.log_base, img_path, part_idx)) |
| 778 | else: | 794 | else: |
| 779 | res_list.append((pno, ino, part_idx, consts.RES_FAILED_2)) | 795 | res_list.append((pno, ino, part_idx, consts.RES_FAILED_2)) |
| 796 | except Exception as e: | ||
| 797 | res_list.append((pno, ino, part_idx, consts.RES_FAILED_2)) | ||
| 798 | self.online_log.error('{0} [license2_process error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 780 | 799 | ||
| 781 | @staticmethod | 800 | @staticmethod |
| 782 | def license_rebuild(license_summary): | 801 | def license_rebuild(license_summary): |
| 802 | # 添加 try-except 处理 | ||
| 803 | try: | ||
| 783 | ic_merge = False | 804 | ic_merge = False |
| 784 | rp_merge = False | 805 | rp_merge = False |
| 785 | 806 | ||
| ... | @@ -854,17 +875,31 @@ class Command(BaseCommand, LoggerMixin): | ... | @@ -854,17 +875,31 @@ class Command(BaseCommand, LoggerMixin): |
| 854 | page_1_2 = page_3_4 = None | 875 | page_1_2 = page_3_4 = None |
| 855 | 876 | ||
| 856 | return ic_merge, rp_merge | 877 | return ic_merge, rp_merge |
| 878 | except Exception as e: | ||
| 879 | print("license_rebuild error") | ||
| 880 | print(traceback.format_exc()) | ||
| 881 | return False, False | ||
| 857 | 882 | ||
| 858 | def parse_img_path(self, img_path): | 883 | def parse_img_path(self, img_path): |
| 884 | # 添加 try-except 处理 | ||
| 885 | try: | ||
| 859 | img_name, _ = os.path.splitext(os.path.basename(img_path)) | 886 | img_name, _ = os.path.splitext(os.path.basename(img_path)) |
| 860 | part_list = img_name.split('_') | 887 | part_list = img_name.split('_') |
| 861 | # page_7_img_11_0 | 888 | # page_7_img_11_0 |
| 862 | return int(part_list[1])+1, int(part_list[3])+1 | 889 | return int(part_list[1])+1, int(part_list[3])+1 |
| 890 | except Exception as e: | ||
| 891 | self.online_log.error('{0} [parse_img_path error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 892 | return 0, 0 | ||
| 863 | 893 | ||
| 864 | def get_most(self, value_list): | 894 | def get_most(self, value_list): |
| 895 | # 添加 try-except 处理 | ||
| 896 | try: | ||
| 865 | if value_list: | 897 | if value_list: |
| 866 | most_common = Counter(value_list).most_common(1) | 898 | most_common = Counter(value_list).most_common(1) |
| 867 | return most_common[0][0] if most_common else None | 899 | return most_common[0][0] if most_common else None |
| 900 | except Exception as e: | ||
| 901 | self.online_log.error('{0} [get_most error] [error={1}]'.format(self.log_base, traceback.format_exc())) | ||
| 902 | return None | ||
| 868 | 903 | ||
| 869 | def date_format(self, date_str, format_str): | 904 | def date_format(self, date_str, format_str): |
| 870 | try: | 905 | try: | ... | ... |
-
Please register or sign in to post a comment