fdb7ca98 by 周伟奇

fix format

1 parent 87525e99
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
3 # @Email : 9428.al@gmail.com 3 # @Email : 9428.al@gmail.com
4 # @Create Date : 2021-07-20 16:42:41 4 # @Create Date : 2021-07-20 16:42:41
5 # @Last Modified : 2021-09-07 19:52:39 5 # @Last Modified : 2021-09-07 19:52:39
6 # @Description : 6 # @Description :
7 7
8 import re 8 import re
9 import numpy as np 9 import numpy as np
...@@ -17,107 +17,110 @@ class Finder: ...@@ -17,107 +17,110 @@ class Finder:
17 self.is_asp = False 17 self.is_asp = False
18 self.item = {"words": None, 18 self.item = {"words": None,
19 "position": None, 19 "position": None,
20 } 20 }
21
21 def gen_init_result(self, is_asp): 22 def gen_init_result(self, is_asp):
22 # 格式化算法输出 23 # 格式化算法输出
23 self.init_result = {"page_1": {"合同编号": self.item, 24 self.init_result = {"page_1": {"合同编号": self.item,
24 "所购车辆价格": self.item, 25 "所购车辆价格": self.item,
25 "车架号": self.item, 26 "车架号": self.item,
26 "贷款本金金额": {"大写": self.item, 27 "贷款本金金额": {"大写": self.item,
27 "小写": self.item, 28 "小写": self.item,
28 "车辆贷款本金金额": self.item, 29 "车辆贷款本金金额": self.item,
29 "附加产品融资贷款本金总金额": self.item, 30 "附加产品融资贷款本金总金额": self.item,
30 }, 31 },
31 "贷款期限": self.item, 32 "贷款期限": self.item,
32 "附加产品融资贷款本金总金额明细": self.item, 33 "附加产品融资贷款本金总金额明细": self.item,
33 "借款人签字及时间": self.item, 34 "借款人签字及时间": self.item,
34 }, 35 },
35 "page_2": {"合同编号": self.item, 36 "page_2": {"合同编号": self.item,
36 "借款人及抵押人": {"name": self.item, 37 "借款人及抵押人": {"name": self.item,
38 "id": self.item,
39 },
40 "共同借款人及共同抵押人": {"name": self.item,
37 "id": self.item, 41 "id": self.item,
38 }, 42 },
39 "共同借款人及共同抵押人": {"name": self.item,
40 "id": self.item,
41 },
42 "保证人1": {"name": self.item, 43 "保证人1": {"name": self.item,
43 "id": self.item, 44 "id": self.item,
44 }, 45 },
45 "保证人2": {"name": self.item, 46 "保证人2": {"name": self.item,
46 "id": self.item, 47 "id": self.item,
47 }, 48 },
48 "所购车辆价格": self.item, 49 "所购车辆价格": self.item,
49 "车架号": self.item, 50 "车架号": self.item,
50 "经销商": self.item, 51 "经销商": self.item,
51 "贷款本金金额": {"大写": self.item, 52 "贷款本金金额": {"大写": self.item,
52 "小写": self.item, 53 "小写": self.item,
53 "车辆贷款本金金额": self.item, 54 "车辆贷款本金金额": self.item,
54 "附加产品融资贷款本金总金额": self.item, 55 "附加产品融资贷款本金总金额": self.item,
55 }, 56 },
56 "贷款期限": self.item, 57 "贷款期限": self.item,
57 "还款账户": {"账号": self.item, 58 "还款账户": {"账号": self.item,
58 "户名": self.item, 59 "户名": self.item,
59 "开户行": self.item, 60 "开户行": self.item,
60 }, 61 },
61 }, 62 },
62 "page_3": {"合同编号": self.item, 63 "page_3": {"合同编号": self.item,
63 "还款计划表": self.item, 64 "还款计划表": self.item,
64 }, 65 },
65 "page_4": {"合同编号": self.item, 66 "page_4": {"合同编号": self.item,
66 "附加产品融资贷款本金总金额明细": self.item, 67 "附加产品融资贷款本金总金额明细": self.item,
67 }, 68 },
68 "page_5": {"合同编号": self.item, 69 "page_5": {"合同编号": self.item,
69 }, 70 },
70 "page_6": {"合同编号": self.item, 71 "page_6": {"合同编号": self.item,
71 }, 72 },
72 } 73 }
73 if self.is_asp == False: 74 if self.is_asp == False:
74 self.init_result["page_7"] = {"合同编号": self.item, 75 self.init_result["page_7"] = {"合同编号": self.item,
75 "主借人签字": {"签字": self.item, 76 "主借人签字": {"签字": self.item,
76 "日期": self.item, 77 "日期": self.item,
77 }, 78 },
78 "共借人签字": {"签字": self.item, 79 "共借人签字": {"签字": self.item,
79 "日期": self.item, 80 "日期": self.item,
80 }, 81 },
81 "保证人1签字": {"签字": self.item, 82 "保证人1签字": {"签字": self.item,
82 "日期": self.item, 83 "日期": self.item,
83 }, 84 },
84 "保证人2签字": {"签字": self.item, 85 "保证人2签字": {"签字": self.item,
85 "日期": self.item, 86 "日期": self.item,
86 }, 87 },
87 "见证人签字": {"签字": self.item, 88 "见证人签字": {"签字": self.item,
88 "日期": self.item, 89 "日期": self.item,
89 }, 90 },
90 } 91 }
91 else: 92 else:
92 self.init_result["page_7"] = {"合同编号": self.item, 93 self.init_result["page_7"] = {"合同编号": self.item,
93 } 94 }
94 self.init_result["page_8"] = {"合同编号": self.item, 95 self.init_result["page_8"] = {"合同编号": self.item,
95 "主借人签字": {"签字": self.item, 96 "主借人签字": {"签字": self.item,
96 "日期": self.item, 97 "日期": self.item,
97 }, 98 },
98 "共借人签字": {"签字": self.item, 99 "共借人签字": {"签字": self.item,
99 "日期": self.item, 100 "日期": self.item,
100 }, 101 },
101 "保证人1签字": {"签字": self.item, 102 "保证人1签字": {"签字": self.item,
102 "日期": self.item, 103 "日期": self.item,
103 }, 104 },
104 "保证人2签字": {"签字": self.item, 105 "保证人2签字": {"签字": self.item,
105 "日期": self.item, 106 "日期": self.item,
106 }, 107 },
107 "见证人签字": {"签字": self.item, 108 "见证人签字": {"签字": self.item,
108 "日期": self.item, 109 "日期": self.item,
109 }, 110 },
110 } 111 }
112
111 def poly_to_rectangle(self, poly): 113 def poly_to_rectangle(self, poly):
112 xmin, ymin, xmax, ymin, xmax, ymax, xmin, ymax = poly 114 xmin, ymin, xmax, ymin, xmax, ymax, xmin, ymax = poly
113 bbox = [xmin, ymin, xmax, ymax] 115 bbox = [xmin, ymin, xmax, ymax]
114 return bbox 116 return bbox
117
115 def get_contract_no(self, page_num): 118 def get_contract_no(self, page_num):
116 """传入页码,查看该页码右上角的编号 119 """传入页码,查看该页码右上角的编号
117 120
118 Args: 121 Args:
119 page_num (string): 122 page_num (string):
120 123
121 Returns: 124 Returns:
122 sting: 125 sting:
123 """ 126 """
...@@ -133,6 +136,7 @@ class Finder: ...@@ -133,6 +136,7 @@ class Finder:
133 contract_no['words'] = words 136 contract_no['words'] = words
134 contract_no['position'] = location 137 contract_no['position'] = location
135 return contract_no 138 return contract_no
139
136 def get_vehicle_price(self, page_num='0'): 140 def get_vehicle_price(self, page_num='0'):
137 vehicle_price = self.item.copy() 141 vehicle_price = self.item.copy()
138 # vehicle_price['words'] = '' 142 # vehicle_price['words'] = ''
...@@ -145,6 +149,7 @@ class Finder: ...@@ -145,6 +149,7 @@ class Finder:
145 vehicle_price['words'] = words 149 vehicle_price['words'] = words
146 vehicle_price['position'] = location 150 vehicle_price['position'] = location
147 return vehicle_price 151 return vehicle_price
152
148 def get_vin(self, page_num='0'): 153 def get_vin(self, page_num='0'):
149 vin = self.item.copy() 154 vin = self.item.copy()
150 # vin['words'] = '' 155 # vin['words'] = ''
...@@ -157,6 +162,7 @@ class Finder: ...@@ -157,6 +162,7 @@ class Finder:
157 vin['words'] = words 162 vin['words'] = words
158 vin['position'] = location 163 vin['position'] = location
159 return vin 164 return vin
165
160 def get_loan_principal(self, page_num='0'): 166 def get_loan_principal(self, page_num='0'):
161 chinese_keywords = ['壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '拾', 167 chinese_keywords = ['壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖', '拾',
162 '佰', '仟', '万', '亿', '元', '角', '分', '零', '整'] 168 '佰', '仟', '万', '亿', '元', '角', '分', '零', '整']
...@@ -197,6 +203,7 @@ class Finder: ...@@ -197,6 +203,7 @@ class Finder:
197 asp_2['position'] = bbox 203 asp_2['position'] = bbox
198 asp_2['words'] = words 204 asp_2['words'] = words
199 return upper, lower, asp_1, asp_2 205 return upper, lower, asp_1, asp_2
206
200 def get_loan_term(self, page_num='0'): 207 def get_loan_term(self, page_num='0'):
201 loan_term = self.item.copy() 208 loan_term = self.item.copy()
202 all_text = '' 209 all_text = ''
...@@ -220,18 +227,21 @@ class Finder: ...@@ -220,18 +227,21 @@ class Finder:
220 loan_term['position'] = bbox 227 loan_term['position'] = bbox
221 loan_term['words'] = words 228 loan_term['words'] = words
222 return loan_term 229 return loan_term
230
223 def mergelist(self, text_list): 231 def mergelist(self, text_list):
224 pattern = re.compile("[^\u4e00-\u9fa5]") # 匹配不是中文的其他字符 232 pattern = re.compile("[^\u4e00-\u9fa5]") # 匹配不是中文的其他字符
225 mergeindex = -1 233 mergeindex = -1
226 for index, i in enumerate(text_list): 234 for index, i in enumerate(text_list):
227 if '所购' in i and len(pattern.sub('', pattern.sub('', text_list[index+1]))) != 0: 235 if '所购' in i and len(pattern.sub('', pattern.sub('', text_list[index+1]))) != 0:
228 # if '所购' in i and '.00' not in text_list[index+1]: 236 # if '所购' in i and '.00' not in text_list[index+1]:
229 mergeindex = index 237 mergeindex = index
230 if mergeindex == -1: 238 if mergeindex == -1:
231 return text_list 239 return text_list
232 else: 240 else:
233 new_text_list = text_list[:mergeindex] + [text_list[mergeindex] + text_list[mergeindex+1]] + text_list[mergeindex+2:] 241 new_text_list = text_list[:mergeindex] + [
234 return self.mergelist(new_text_list) 242 text_list[mergeindex] + text_list[mergeindex+1]] + text_list[mergeindex+2:]
243 return self.mergelist(new_text_list)
244
235 def get_asp_details(self, page_num): 245 def get_asp_details(self, page_num):
236 asp_details_table_term = self.item.copy() 246 asp_details_table_term = self.item.copy()
237 asp_details_table = [] 247 asp_details_table = []
...@@ -262,6 +272,7 @@ class Finder: ...@@ -262,6 +272,7 @@ class Finder:
262 if len(asp_details_table) > 0: 272 if len(asp_details_table) > 0:
263 asp_details_table_term['words'] = asp_details_table 273 asp_details_table_term['words'] = asp_details_table
264 return asp_details_table_term 274 return asp_details_table_term
275
265 def get_signature(self): 276 def get_signature(self):
266 signature = self.item.copy() 277 signature = self.item.copy()
267 for block in self.pdf_info['0']['blocks']: 278 for block in self.pdf_info['0']['blocks']:
...@@ -275,6 +286,7 @@ class Finder: ...@@ -275,6 +286,7 @@ class Finder:
275 signature['words'] = words 286 signature['words'] = words
276 signature['position'] = bbox 287 signature['position'] = bbox
277 return signature 288 return signature
289
278 def get_somebody(self, top, bottom): 290 def get_somebody(self, top, bottom):
279 # 指定上下边界后,返回上下边界内的客户信息 291 # 指定上下边界后,返回上下边界内的客户信息
280 _name = self.item.copy() 292 _name = self.item.copy()
...@@ -309,6 +321,7 @@ class Finder: ...@@ -309,6 +321,7 @@ class Finder:
309 _id['position'] = bbox 321 _id['position'] = bbox
310 _id['words'] = words 322 _id['words'] = words
311 return _name, _id 323 return _name, _id
324
312 def get_seller(self): 325 def get_seller(self):
313 seller = self.item.copy() 326 seller = self.item.copy()
314 # 先找到 key 327 # 先找到 key
...@@ -330,11 +343,12 @@ class Finder: ...@@ -330,11 +343,12 @@ class Finder:
330 for line in block['lines']: 343 for line in block['lines']:
331 for span in line['spans']: 344 for span in line['spans']:
332 bbox, text = span['bbox'], span['text'] 345 bbox, text = span['bbox'], span['text']
333 if anchor_bbox[2]<np.mean(bbox[::2])<half_width and \ 346 if anchor_bbox[2] < np.mean(bbox[::2]) < half_width and \
334 anchor_bbox[1]<np.mean(bbox[1::2])<anchor_bbox[3]: 347 anchor_bbox[1] < np.mean(bbox[1::2]) < anchor_bbox[3]:
335 seller['position'] = bbox 348 seller['position'] = bbox
336 seller['words'] = text 349 seller['words'] = text
337 return seller 350 return seller
351
338 def get_payback_account(self): 352 def get_payback_account(self):
339 account = self.item.copy() 353 account = self.item.copy()
340 account_name = self.item.copy() 354 account_name = self.item.copy()
...@@ -387,6 +401,7 @@ class Finder: ...@@ -387,6 +401,7 @@ class Finder:
387 account_bank['position'] = bbox 401 account_bank['position'] = bbox
388 account_bank['words'] = words 402 account_bank['words'] = words
389 return account, account_name, account_bank 403 return account, account_name, account_bank
404
390 def get_repayment_schedule(self): 405 def get_repayment_schedule(self):
391 repayment_schedule = self.item.copy() 406 repayment_schedule = self.item.copy()
392 # 只看第二页 407 # 只看第二页
...@@ -416,6 +431,7 @@ class Finder: ...@@ -416,6 +431,7 @@ class Finder:
416 if len(repayment_schedule_table) > 0: 431 if len(repayment_schedule_table) > 0:
417 repayment_schedule['words'] = repayment_schedule_table 432 repayment_schedule['words'] = repayment_schedule_table
418 return repayment_schedule 433 return repayment_schedule
434
419 def get_signature_role_1(self): 435 def get_signature_role_1(self):
420 signature_role_1 = self.init_item.copy() 436 signature_role_1 = self.init_item.copy()
421 # 先定位签字区域 437 # 先定位签字区域
...@@ -445,11 +461,13 @@ class Finder: ...@@ -445,11 +461,13 @@ class Finder:
445 else: 461 else:
446 words = '无' 462 words = '无'
447 boxes = np.array(boxes).reshape((-1, 2)) 463 boxes = np.array(boxes).reshape((-1, 2))
448 position = [min(boxes[:,0]), min(boxes[:,1]), max(boxes[:,0]), max(boxes[:,1])] 464 position = [min(boxes[:, 0]), min(boxes[:, 1]),
465 max(boxes[:, 0]), max(boxes[:, 1])]
449 signature_role_1['page_num'] = page_num 466 signature_role_1['page_num'] = page_num
450 signature_role_1['position'] = position 467 signature_role_1['position'] = position
451 signature_role_1['words'] = words 468 signature_role_1['words'] = words
452 return signature_role_1 469 return signature_role_1
470
453 def get_signature_role_2(self): 471 def get_signature_role_2(self):
454 signature_role_2 = self.init_item.copy() 472 signature_role_2 = self.init_item.copy()
455 # 先定位签字区域 473 # 先定位签字区域
...@@ -479,11 +497,13 @@ class Finder: ...@@ -479,11 +497,13 @@ class Finder:
479 else: 497 else:
480 words = '无' 498 words = '无'
481 boxes = np.array(boxes).reshape((-1, 2)) 499 boxes = np.array(boxes).reshape((-1, 2))
482 position = [min(boxes[:,0]), min(boxes[:,1]), max(boxes[:,0]), max(boxes[:,1])] 500 position = [min(boxes[:, 0]), min(boxes[:, 1]),
501 max(boxes[:, 0]), max(boxes[:, 1])]
483 signature_role_2['page_num'] = page_num 502 signature_role_2['page_num'] = page_num
484 signature_role_2['position'] = position 503 signature_role_2['position'] = position
485 signature_role_2['words'] = words 504 signature_role_2['words'] = words
486 return signature_role_2 505 return signature_role_2
506
487 def get_signature_role_3(self): 507 def get_signature_role_3(self):
488 signature_role_3 = self.init_item.copy() 508 signature_role_3 = self.init_item.copy()
489 # 先定位签字区域 509 # 先定位签字区域
...@@ -513,11 +533,13 @@ class Finder: ...@@ -513,11 +533,13 @@ class Finder:
513 else: 533 else:
514 words = '无' 534 words = '无'
515 boxes = np.array(boxes).reshape((-1, 2)) 535 boxes = np.array(boxes).reshape((-1, 2))
516 position = [min(boxes[:,0]), min(boxes[:,1]), max(boxes[:,0]), max(boxes[:,1])] 536 position = [min(boxes[:, 0]), min(boxes[:, 1]),
537 max(boxes[:, 0]), max(boxes[:, 1])]
517 signature_role_3['page_num'] = page_num 538 signature_role_3['page_num'] = page_num
518 signature_role_3['position'] = position 539 signature_role_3['position'] = position
519 signature_role_3['words'] = words 540 signature_role_3['words'] = words
520 return signature_role_3 541 return signature_role_3
542
521 def get_signature_role_4(self): 543 def get_signature_role_4(self):
522 signature_role_4 = self.init_item.copy() 544 signature_role_4 = self.init_item.copy()
523 # 先定位签字区域 545 # 先定位签字区域
...@@ -547,11 +569,13 @@ class Finder: ...@@ -547,11 +569,13 @@ class Finder:
547 else: 569 else:
548 words = '无' 570 words = '无'
549 boxes = np.array(boxes).reshape((-1, 2)) 571 boxes = np.array(boxes).reshape((-1, 2))
550 position = [min(boxes[:,0]), min(boxes[:,1]), max(boxes[:,0]), max(boxes[:,1])] 572 position = [min(boxes[:, 0]), min(boxes[:, 1]),
573 max(boxes[:, 0]), max(boxes[:, 1])]
551 signature_role_4['page_num'] = page_num 574 signature_role_4['page_num'] = page_num
552 signature_role_4['position'] = position 575 signature_role_4['position'] = position
553 signature_role_4['words'] = words 576 signature_role_4['words'] = words
554 return signature_role_4 577 return signature_role_4
578
555 def get_signature_role_5(self): 579 def get_signature_role_5(self):
556 signature_role_5 = self.init_item.copy() 580 signature_role_5 = self.init_item.copy()
557 # 先定位签字区域 581 # 先定位签字区域
...@@ -582,11 +606,13 @@ class Finder: ...@@ -582,11 +606,13 @@ class Finder:
582 else: 606 else:
583 words = '无' 607 words = '无'
584 boxes = np.array(boxes).reshape((-1, 2)) 608 boxes = np.array(boxes).reshape((-1, 2))
585 position = [min(boxes[:,0]), min(boxes[:,1]), max(boxes[:,0]), max(boxes[:,1])] 609 position = [min(boxes[:, 0]), min(boxes[:, 1]),
610 max(boxes[:, 0]), max(boxes[:, 1])]
586 signature_role_5['page_num'] = page_num 611 signature_role_5['page_num'] = page_num
587 signature_role_5['position'] = position 612 signature_role_5['position'] = position
588 signature_role_5['words'] = words 613 signature_role_5['words'] = words
589 return signature_role_5 614 return signature_role_5
615
590 def get_last_page_signature(self, page_num, top, bottom): 616 def get_last_page_signature(self, page_num, top, bottom):
591 signature_name = self.item.copy() 617 signature_name = self.item.copy()
592 signature_date = self.item.copy() 618 signature_date = self.item.copy()
...@@ -610,7 +636,7 @@ class Finder: ...@@ -610,7 +636,7 @@ class Finder:
610 for line in block['lines']: 636 for line in block['lines']:
611 for span in line['spans']: 637 for span in line['spans']:
612 bbox, text = span['bbox'], span['text'] 638 bbox, text = span['bbox'], span['text']
613 if '签署日期' in text and int(anchor_top)<np.mean(bbox[1::2])<int(anchor_bottom): 639 if '签署日期' in text and int(anchor_top) < np.mean(bbox[1::2]) < int(anchor_bottom):
614 name = text.split(' ')[0] 640 name = text.split(' ')[0]
615 date = text.split(':')[-1] 641 date = text.split(':')[-1]
616 signature_name['words'] = name 642 signature_name['words'] = name
...@@ -618,10 +644,11 @@ class Finder: ...@@ -618,10 +644,11 @@ class Finder:
618 signature_date['words'] = date 644 signature_date['words'] = date
619 signature_date['position'] = bbox 645 signature_date['position'] = bbox
620 return signature_name, signature_date 646 return signature_name, signature_date
647
621 def get_info(self): 648 def get_info(self):
622 """ 649 """
623 block['type'] == 0 : 表示该元素为图片 650 block['type'] == 0 : 表示该元素为图片
624 651
625 Returns: 652 Returns:
626 dict: Description 653 dict: Description
627 """ 654 """
...@@ -672,22 +699,27 @@ class Finder: ...@@ -672,22 +699,27 @@ class Finder:
672 contract_no = self.get_contract_no(page_num='0') 699 contract_no = self.get_contract_no(page_num='0')
673 self.init_result['page_2']['合同编号'] = contract_no 700 self.init_result['page_2']['合同编号'] = contract_no
674 # 找借款人及抵押人(地址字段原本有空格) 701 # 找借款人及抵押人(地址字段原本有空格)
675 borrower_name, borrower_id = self.get_somebody(top='借款人及抵押人:', bottom='共同借款人:') 702 borrower_name, borrower_id = self.get_somebody(
703 top='借款人及抵押人:', bottom='共同借款人:')
676 # 这是为了同时兼容 8.1 版本 704 # 这是为了同时兼容 8.1 版本
677 if borrower_name['words'] == None: 705 if borrower_name['words'] == None:
678 borrower_name, borrower_id = self.get_somebody(top='借款人及抵押人:', bottom='共同借款人及共同抵押人:') 706 borrower_name, borrower_id = self.get_somebody(
707 top='借款人及抵押人:', bottom='共同借款人及共同抵押人:')
679 self.init_result['page_2']['借款人及抵押人']['name'] = borrower_name 708 self.init_result['page_2']['借款人及抵押人']['name'] = borrower_name
680 self.init_result['page_2']['借款人及抵押人']['id'] = borrower_id 709 self.init_result['page_2']['借款人及抵押人']['id'] = borrower_id
681 # 找共同借款人及共同抵押人 710 # 找共同借款人及共同抵押人
682 co_borrower_name, co_borrower_id = self.get_somebody(top='共同借款人:', bottom='保证人1:') 711 co_borrower_name, co_borrower_id = self.get_somebody(
712 top='共同借款人:', bottom='保证人1:')
683 self.init_result['page_2']['共同借款人及共同抵押人']['name'] = co_borrower_name 713 self.init_result['page_2']['共同借款人及共同抵押人']['name'] = co_borrower_name
684 self.init_result['page_2']['共同借款人及共同抵押人']['id'] = co_borrower_id 714 self.init_result['page_2']['共同借款人及共同抵押人']['id'] = co_borrower_id
685 # 保证人1 715 # 保证人1
686 first_guarantor_name, first_guarantor_id = self.get_somebody(top='保证人1:', bottom='保证人2:') 716 first_guarantor_name, first_guarantor_id = self.get_somebody(
717 top='保证人1:', bottom='保证人2:')
687 self.init_result['page_2']['保证人1']['name'] = first_guarantor_name 718 self.init_result['page_2']['保证人1']['name'] = first_guarantor_name
688 self.init_result['page_2']['保证人1']['id'] = first_guarantor_id 719 self.init_result['page_2']['保证人1']['id'] = first_guarantor_id
689 # 保证人2 720 # 保证人2
690 second_guarantor_name, second_guarantor_id = self.get_somebody(top='保证人2:', bottom='第一章') 721 second_guarantor_name, second_guarantor_id = self.get_somebody(
722 top='保证人2:', bottom='第一章')
691 self.init_result['page_2']['保证人2']['name'] = second_guarantor_name 723 self.init_result['page_2']['保证人2']['name'] = second_guarantor_name
692 self.init_result['page_2']['保证人2']['id'] = second_guarantor_id 724 self.init_result['page_2']['保证人2']['id'] = second_guarantor_id
693 # 所购车辆价格 725 # 所购车辆价格
...@@ -745,23 +777,23 @@ class Finder: ...@@ -745,23 +777,23 @@ class Finder:
745 contract_no = self.get_contract_no(page_num='6') 777 contract_no = self.get_contract_no(page_num='6')
746 self.init_result['page_7']['合同编号'] = contract_no 778 self.init_result['page_7']['合同编号'] = contract_no
747 signature_name, signature_date = self.get_last_page_signature(page_num='6', 779 signature_name, signature_date = self.get_last_page_signature(page_num='6',
748 top='合同编号', bottom='共同借款人') 780 top='合同编号', bottom='共同借款人')
749 self.init_result['page_7']['主借人签字']['签字'] = signature_name 781 self.init_result['page_7']['主借人签字']['签字'] = signature_name
750 self.init_result['page_7']['主借人签字']['日期'] = signature_date 782 self.init_result['page_7']['主借人签字']['日期'] = signature_date
751 signature_name, signature_date = self.get_last_page_signature(page_num='6', 783 signature_name, signature_date = self.get_last_page_signature(page_num='6',
752 top='共同借款人', bottom='保证人1') 784 top='共同借款人', bottom='保证人1')
753 self.init_result['page_7']['共借人签字']['签字'] = signature_name 785 self.init_result['page_7']['共借人签字']['签字'] = signature_name
754 self.init_result['page_7']['共借人签字']['日期'] = signature_date 786 self.init_result['page_7']['共借人签字']['日期'] = signature_date
755 signature_name, signature_date = self.get_last_page_signature(page_num='6', 787 signature_name, signature_date = self.get_last_page_signature(page_num='6',
756 top='保证人1', bottom='保证人2') 788 top='保证人1', bottom='保证人2')
757 self.init_result['page_7']['保证人1签字']['签字'] = signature_name 789 self.init_result['page_7']['保证人1签字']['签字'] = signature_name
758 self.init_result['page_7']['保证人1签字']['日期'] = signature_date 790 self.init_result['page_7']['保证人1签字']['日期'] = signature_date
759 signature_name, signature_date = self.get_last_page_signature(page_num='6', 791 signature_name, signature_date = self.get_last_page_signature(page_num='6',
760 top='保证人2', bottom='在本人面前亲笔签署本合同') 792 top='保证人2', bottom='在本人面前亲笔签署本合同')
761 self.init_result['page_7']['保证人2签字']['签字'] = signature_name 793 self.init_result['page_7']['保证人2签字']['签字'] = signature_name
762 self.init_result['page_7']['保证人2签字']['日期'] = signature_date 794 self.init_result['page_7']['保证人2签字']['日期'] = signature_date
763 signature_name, signature_date = self.get_last_page_signature(page_num='6', 795 signature_name, signature_date = self.get_last_page_signature(page_num='6',
764 top='在本人面前亲笔签署本合同', bottom='以下无正文') 796 top='在本人面前亲笔签署本合同', bottom='以下无正文')
765 self.init_result['page_7']['见证人签字']['签字'] = signature_name 797 self.init_result['page_7']['见证人签字']['签字'] = signature_name
766 self.init_result['page_7']['见证人签字']['日期'] = signature_date 798 self.init_result['page_7']['见证人签字']['日期'] = signature_date
767 else: 799 else:
...@@ -774,27 +806,27 @@ class Finder: ...@@ -774,27 +806,27 @@ class Finder:
774 contract_no = self.get_contract_no(page_num='7') 806 contract_no = self.get_contract_no(page_num='7')
775 self.init_result['page_8']['合同编号'] = contract_no 807 self.init_result['page_8']['合同编号'] = contract_no
776 signature_name, signature_date = self.get_last_page_signature(page_num='7', 808 signature_name, signature_date = self.get_last_page_signature(page_num='7',
777 top='合同编号', bottom='共同借款人') 809 top='合同编号', bottom='共同借款人')
778 self.init_result['page_8']['主借人签字']['签字'] = signature_name 810 self.init_result['page_8']['主借人签字']['签字'] = signature_name
779 self.init_result['page_8']['主借人签字']['日期'] = signature_date 811 self.init_result['page_8']['主借人签字']['日期'] = signature_date
780 signature_name, signature_date = self.get_last_page_signature(page_num='7', 812 signature_name, signature_date = self.get_last_page_signature(page_num='7',
781 top='共同借款人', bottom='保证人1') 813 top='共同借款人', bottom='保证人1')
782 self.init_result['page_8']['共借人签字']['签字'] = signature_name 814 self.init_result['page_8']['共借人签字']['签字'] = signature_name
783 self.init_result['page_8']['共借人签字']['日期'] = signature_date 815 self.init_result['page_8']['共借人签字']['日期'] = signature_date
784 signature_name, signature_date = self.get_last_page_signature(page_num='7', 816 signature_name, signature_date = self.get_last_page_signature(page_num='7',
785 top='保证人1', bottom='保证人2') 817 top='保证人1', bottom='保证人2')
786 self.init_result['page_8']['保证人1签字']['签字'] = signature_name 818 self.init_result['page_8']['保证人1签字']['签字'] = signature_name
787 self.init_result['page_8']['保证人1签字']['日期'] = signature_date 819 self.init_result['page_8']['保证人1签字']['日期'] = signature_date
788 signature_name, signature_date = self.get_last_page_signature(page_num='7', 820 signature_name, signature_date = self.get_last_page_signature(page_num='7',
789 top='保证人2', bottom='在本人面前亲笔签署本合同') 821 top='保证人2', bottom='在本人面前亲笔签署本合同')
790 self.init_result['page_8']['保证人2签字']['签字'] = signature_name 822 self.init_result['page_8']['保证人2签字']['签字'] = signature_name
791 self.init_result['page_8']['保证人2签字']['日期'] = signature_date 823 self.init_result['page_8']['保证人2签字']['日期'] = signature_date
792 signature_name, signature_date = self.get_last_page_signature(page_num='7', 824 signature_name, signature_date = self.get_last_page_signature(page_num='7',
793 top='在本人面前亲笔签署本合同', bottom='以下无正文') 825 top='在本人面前亲笔签署本合同', bottom='以下无正文')
794 self.init_result['page_8']['见证人签字']['签字'] = signature_name 826 self.init_result['page_8']['见证人签字']['签字'] = signature_name
795 self.init_result['page_8']['见证人签字']['日期'] = signature_date 827 self.init_result['page_8']['见证人签字']['日期'] = signature_date
796 # 重新定制输出 828 # 重新定制输出
797 new_results = {"is_asp": self.is_asp, 829 new_results = {"is_asp": self.is_asp,
798 "page_info": self.init_result 830 "page_info": self.init_result
799 } 831 }
800 return new_results 832 return new_results
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!