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