def __init__(self, result): self.result = union_rbox(result, 3.5) self.res = {"verifyTitle": "", "verifyName": ""} try: self.title() except Exception as e: print(e) if self.res["verifyTitle"] == "": self.res["verifyName"] = ""
def __init__(self, result): self.init_result = result result = union_rbox(result, 1) self.resulting = result self.result = union_rbox(result, 2) self.check_status = 0 self.N = len(self.result) self.res = {"name": "", "sex": "", "No": ""} try: self.full_name() except Exception as e: print(e) try: self.idNO() except Exception as e: print(e) try: self.sex() except Exception as e: print(e)
def __init__(self, result): self.result = union_rbox(result, 2) # self.result = self.predeal(self.result) self.N = len(self.result) self.res = {"sign": "", "time": ""} self.time_app = "" try: self.sign() except Exception as e: print(e) try: self.time() except Exception as e: print(e)
def __init__(self, result): self.result = union_rbox(result, 0.5) # self.result = self.predeal(self.result) self.N = len(self.result) self.check_status = 0 self.res = {} self.res["name"] = "" self.res["No"] = "" try: self.name() except Exception as e: print(e) try: self.idNO() except Exception as e: print(e)
def __init__(self, result): self.result_ori = result self.result = union_rbox(result, 0.5) self.res = {} self.res["card"] = "" self.res["rmb"] = "" self.res["principal"] = "" try: self.card() except Exception as e: print(e) try: self.principal() except Exception as e: print(e) try: self.rmb() except Exception as e: print(e)
def rmb(self): # title = {} # index = 0 # for i in range(len(self.result)): # pass # title["title"] = self.result[index]["words"] # self.res.update(title) self.result = union_rbox(self.result_ori, 1) lines = [unify_rec1(self.result[i]["words"]) for i in range(len(self.result))] rmb = {} rmb_temp = "" for i in range(len(lines)): line = lines[i] # print(line) if '本金' in line and extract_rmb(line[line.index('本金'):]): rmb_temp = extract_rmb(line[line.index('本金'):]) if startswith(rmb_temp, ['0', '.', ',']): rmb_temp = '' if len(rmb_temp) > 0 and str(rmb_temp[0]).isdigit(): rmb_temp = '-{}'.format(rmb_temp) if rmb_temp != "" and not startswith(rmb_temp, ['0', '.', ',']): # confidence_ = str(get_confidence(self.path, box)) rmb_temp = rmb_temp break # print(rmb_temp) lines = [unify_rec(self.result_ori[i]["words"]) for i in range(len(self.result_ori))] # print('-----------------------------------') for i in range(len(lines)): line = lines[i] if '本金' in line: if rmb_temp == '' and i+4 < len(lines): texts = [text.replace(',', ',') for text in lines[i:i+5] if not startswith(text, ['0', '.', ','])] for text in texts: if set(text) <= set('1234567890,-.'): rmb_temp = text break if rmb_temp != "" and not rmb_temp.startswith('0'): if not rmb_temp.startswith('-'): rmb_temp = '-{}'.format(rmb_temp) rmb_temp = rmb_temp break for i in range(len(lines)): line = lines[i] if '本金' in line: # print('*********************************') if rmb_temp == '' and i-2 >= 0: texts = [text.replace(',', ',') for text in lines[i-2:i] if not text.startswith('0')] # print(texts) for text in texts: if set(text) <= set('1234567890,-.'): rmb_temp = text break if rmb_temp != "" and not rmb_temp.startswith('0'): # confidence_ = str(get_confidence(self.path, box)) if not rmb_temp.startswith('-'): rmb_temp = '-{}'.format(rmb_temp) rmb_temp = rmb_temp break if ' ' in rmb_temp or rmb_temp.startswith(','): if len(rmb_temp[:rmb_temp.index(" ")]) == 1 or rmb_temp.startswith(','): rmb_temp = "" if rmb_temp.count('.') >= 2 and ',' not in rmb_temp: rmb_temp = ','.join( [rmb_temp[:rmb_temp.index('.')], rmb_temp[rmb_temp.index('.')+1:]]) rmb["rmb"] = rmb_temp self.res.update(rmb)