做UI自动化绕不开的就是识别验证码了,最简单的方法就是让开发加一个万能验证码,但在生产环境下最好自己写代码识别,保证生产环境的真实性。其实也有其他方法,涉及到验证码储存的机制,由于过于麻烦,这边不做过多说明, 本次教学面向的验证码属于最基本的图形验证码
步骤一:
截取页面上的验证码截图,并对验证码做简单的图像处理,使之更容易辨识。
步骤二:
利用第三方库把截图上的字符输出出来。
使用到的第三方库如下:
- pillow
pip install pillow
- pytesseract
pip install pytesseract
先来说下怎么截取验证码,
from PIL import Image
from selenium import webdriver
'''
省略了driver = webdriver.Firefox()那些过程...建议结合自己的项目或自己找
'''
driver.save_screenshot('v_code.png') # 先把整个页面截图下来
element = driver.find_element_by_id('verifcode') # 定位验证码元素
print("验证码元素位置:", element.location)