Ejemplo n.º 1
0
    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"] = ""
Ejemplo n.º 2
0
    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)
Ejemplo n.º 3
0
 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)
Ejemplo n.º 4
0
 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)
Ejemplo n.º 5
0
    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)
Ejemplo n.º 6
0
    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)