python自动化实现登录获取图片验证码功能selemium
print("识别验证码")
# 网上下载tesseract,给定ocr的安装目录
pytesseract.tesseract_cmd = ('C:\\Program Files\\Tesseract-OCR\\tesseract.exe')
# 验证码输入框元素
print("定位验证码输入框元素")
codeElement = authcode = driver.find_element_by_id("checkCode")
# 验证图片元素
print("验证图片元素")
imgElement = 'C:\\Users\\TZ\\Desktop\\captcha.png'
# 2、截取屏幕内容,保存到本地
print("截取屏幕内容,保存到本地")
driver.save_screenshot( 'C:\\Users\\TZ\\Desktop\\captcha.png')
# 3、打开截图,获取验证码位置,截取保存验证码
print("打开截图,获取验证码位置,截取保存验证码")
ran = Image.open( 'C:\\Users\\TZ\\Desktop\\captcha.png' )
print("获取验证码位置,定位验证码的(左,上,右,下)")
box = (1255, 341, 1338, 367) # 获取验证码位置,自动定位不是很明白,就使用了手动定位,代表(左,上,右,下)
ran.crop( box ).save( "C:\\Users\\TZ\\Desktop\\captcha2.png" )
print("获取验证码图片,读取验证码")
# 4、获取验证码图片,读取验证码
imageCode = Image.open( "C:\\Users\\TZ\\Desktop\\captcha2.png" )
code = pytesseract.image_to_string(imageCode ).strip()
print("拿到验证码,输入验证")
# 5、收到验证码,进行输入验证
print( code.lower() )
需要安装ocr识别软件tesseract ,然后
import pytesseract
from PIL import Image 就可以了 验证码的位置需要画图工具 定位一下位置
需要软件测试自动话课程的加qq971090345