Skip to content

Commit 6d3e749

Browse files
committed
兼容OCR截图中只包含6位验证码的匹配
1 parent 6268a87 commit 6d3e749

1 file changed

Lines changed: 24 additions & 10 deletions

File tree

‎captcha/baidu_ocr.py‎

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -51,23 +51,37 @@ def baidu_ocr(self, _range, delay_time=5):
5151
code, length = "", len(ret["words_result"])
5252

5353
for idx, words in enumerate(ret["words_result"]):
54-
find_all = re.findall(r'([\d]{6})[\u3002]', words["words"])
55-
if len(find_all) == 0:
56-
if idx == length - 1:
57-
print("暂未获取到最新验证码,%d秒后重试" % delay_time)
58-
time.sleep(delay_time)
59-
return self.baidu_ocr(_range, delay_time)
60-
else:
61-
continue
62-
elif len(find_all) >= 1:
54+
find_all = re.findall(r'[\d]{6}', words["words"])
55+
if len(find_all) == 1:
6356
code = find_all[0]
6457
if sms_code == code:
6558
print("暂未获取到最新验证码,%d秒后重试" % delay_time)
6659
time.sleep(delay_time)
6760
return self.baidu_ocr(_range, delay_time)
6861
else:
6962
sms_code = code
70-
return code
63+
64+
return code
65+
else:
66+
find_all = re.findall(r'([\d]{6})[\u3002]', words["words"])
67+
if len(find_all) == 0:
68+
if idx == length - 1:
69+
print("暂未获取到最新验证码,%d秒后重试" % delay_time)
70+
time.sleep(delay_time)
71+
return self.baidu_ocr(_range, delay_time)
72+
else:
73+
continue
74+
elif len(find_all) >= 1:
75+
print(find_all)
76+
code = find_all[0]
77+
if sms_code == code:
78+
print("暂未获取到最新验证码,%d秒后重试" % delay_time)
79+
time.sleep(delay_time)
80+
return self.baidu_ocr(_range, delay_time)
81+
else:
82+
sms_code = code
83+
84+
return code
7185
else:
7286
print("暂未获取到最新验证码,%d秒后重试" % delay_time)
7387
time.sleep(delay_time)

0 commit comments

Comments
 (0)