Selenium 我每次抓到这个验证码填写完成后,他就自动更换

Jambo · 2022年07月18日 · 最后由 tangoliver 回复于 2023年02月28日 · 6738 次阅读


共收到 4 条回复 时间 点赞

可以换一种方法,不知道你定位的时候图片是否有地址,如果有地址的话,你可以直接保存图片后在用 ddddorc 识别

# 获取图片地址
img_url = driver.find_element("图片的位置").get_attribute("图片的下载地址的标签属性,比如src,img之类的")
# 保存图片
with open("图片保存的地址及名称", "wb")as f:
  f.writer(request.get(img_url).content())
  f.close()
# ddddorc识别图片
ocr = ddddocr.DdddOcr(show_ad=False)
with open('图片文件地址', 'rb') as f:
  img = f.read()
  f.close()
res = ocr.classification(img)

print(res.lower())

谢谢大佬

获取验证码元素以后,截这个验证码的图,然后保存到本地,再通过 ddddorc,这样是最准的。

你这个方法会出现验证码与你当前页面显示的不一致,因为验证码的图片,被你请求了两次,而第二次的请求是没有让页面更新的

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册