目的:使用自动化登录网站的时候,经常输入用户名和密码后会遇到验证码,可通过ddddocr来识别验证码,如:
原理:直接获取验证码base64数据,然后OCR解析进行处理
注:主要针对数字字母类验证码
1、安装ddddocr
pip install ddddocr
2、使用
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
import ddddocr
driver = webdriver.Chrome()
url='xxxx'
driver.get(url)
sleep(5)
# 定位到图片验证码元素
img = driver.find_element(by=By.ID, value='canvas1')
# 获取图片base64数据
data = img.screenshot_as_base64
ocr = ddddocr.DdddOcr()
# 进行验证码识别(识别有一定的错误率,实际使用时,可增加if判断)
code = ocr.classification(data)
print("验证码为:", code)
sleep(5)
driver.quit()
这样就能得到图片验证码字符串了
运行结果: