WEB自动化(1)环境安装及打开浏览器实例
WEB自动化(2)常用的元素定位方法之xpath详解
WEB自动化(3)PO设计模式原理与实现
WEB自动化(4)使用selenium将网站验证码截图保存为本地图片
WEB自动化(5)获取网站验证码即从验证码截图中获取图片中的字符串
WEB自动化(6)WEB自动化及脚本在Linux系统上正常运行一段时间后报session not created from tab crashed 的错误的解决办法
(1)网站验证码截图为图片的用途
WEB自动化经常设计网站验证码的处理,要想解决网站验证码的问题,第一步就是首先需要将网站的验证码截图保存为本地图片,然后再用其他图像处理技术进行后续处理
(2)安装依赖
pip install selenium
pip install pillow
(3)代码如下
具体注意点在代码中已经标注注释
from selenium import webdriver
from PIL import Image
def download_verify():
driver=webdriver.Chrome()
driver.get("https://test-portal.summer-ospp.ac.cn/") # 网站登录地址,更换为自己的登录地址
driver.maximize_window() # 一定要窗口最大化处理
driver.save_screenshot('print_screen.png') # 全屏截图保存为本地图片
image = driver.find_element_by_xpath('//*[@id="code"]/div[2]/a/img') # 在验证码上右键-检查,查询到验证码的xpath路径,跟换为自己的xpath
location=image.location
size = image.size
rangle = (int(location['x']), int(location['y']), int(location['x'] + size['width']),
int(location['y'] + size['height']))
i = Image.open("print_screen.png") # 打开上面保存的全屏截图图片
frame4 = i.crop(rangle)
frame4.save('verify_code.png') # 保存为验证码的截图图片
download_verify()