web自动化测试笔记3-设置不同浏览器缩放比例并截图保存

 完整代码,后续修改登录验证部分,以及实际地址

from io import BytesIO
from PIL import Image
from selenium.webdriver import ActionChains
import time
import ddddocr
from webdriver_helper import get_webdriver
from selenium.webdriver.common.by import By
driver = get_webdriver()#获取浏览器驱动
driver.maximize_window()#最大化窗口
driver.get("修改登录地址")#打开登录页面
time.sleep(3)
name1=driver.find_element(By.XPATH,'//*[@id="userLayout"]/div/div/div/div[2]/form/div[1]/form/div[1]/div/div/span/span/input')#获取用户名输入框
name1.send_keys("adminxj")#输入用户名
pwd1=driver.find_element(By.XPATH,'//*[@id="userLayout"]/div/div/div/div[2]/form/div[1]/form/div[2]/div/div/span/span/input')#获取密码输入框
pwd1.send_keys("Admin@2024")#输入密码
bimg=driver.find_element(By.XPATH,'//*[@id="userLayout"]/div/div/div/div[2]/form/div[1]/form/div[3]/div[2]')
bimg.click()#点击验证码刷新图片根据实际情况添加
# 下面是验证码识别部分
x,y=bimg.location.values()#获取元素坐标
h,w=bimg.size.values()#获取元素大小
print(h,w)
image_data = driver.get_screenshot_as_png()#获取页面的截图二进制
# print(image_data)#打印截图二进制
screen_shot = Image.open(BytesIO(image_data))#将截图转化为图片
result=screen_shot.crop((x,y,x+w,y+h))#裁剪验证码
ocr=ddddocr.DdddOcr()#实例化ocr识别类
res=ocr.classification(result)#识别验证码
print(res)#打印验证码
# 验证码识别结束
Yzm=driver.find_element(By.XPATH,'//*[@id="userLayout"]/div/div/div/div[2]/form/div[1]/form/div[3]/div[1]/div/div/div/span/span/input')#获取验证码输入框
Yzm.send_keys(res)#输入验证码
djdl=driver.find_element(By.XPATH,'//*[@id="userLayout"]/div/div/div/div[2]/form/div[2]/div/div/span/button')#获取登录按钮
djdl.click()#点击登录按钮
time.sleep(4)#等待页面加载完成

# 定义缩放比例列表
zoom_levels = [25, 50, 75, 100, 125, 150, 200]
#定义要检查的网页元素
check_elements = {'四情监测页面':'/fourSituation/weatherMonitoring',
                  '种植模型预览':'/fertilityMonitoring/prediction',
                  '灌溉模型-灌溉可视化':'/irrigationModel/strategy'}
for check_elementkey,check_elementvalue in check_elements.items():
    driver.get(f"http://修改域名{check_elementvalue}")#打开要检查的网页
    time.sleep(2)#等待页面加载完成
    # 测试不同的缩放比例
    for zoom_level in zoom_levels:
        # 设置缩放比例
        driver.execute_script(f"document.body.style.zoom='{zoom_level}%'")
        time.sleep(4)  # 等待页面加载
        # 截图并保存
        img=driver.get_screenshot_as_png()
        img_shot=Image.open(BytesIO(img))
        img_shot.save(f"E:\测试脚本文件\python\selenium_1\截图\{check_elementkey}比例为_{zoom_level}.png")#修改地址
        # 在这里添加检查网页显示情况的代码
        print(f"Zoom level {zoom_level}% tested.")

# 关闭浏览器
driver.quit()
  • 12
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

a place called you

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值