浏览器的控制方法

一、控制浏览器窗口的大小
希望浏览器以某种尺寸打开,让访问的网页在这种尺寸下运行,webdriver提供的API:
set_window_size():设置浏览器的大小
maxmize_window():最大化显示
minmize_window():最小化显示

#导包、创建浏览器对象、获取一下url地址
from selenium import webdriver
import time

#driver:就是一个普通的变量,dr也行
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")

#比较喜欢宽屏显示,我也要设置打开的窗口为:1920 * 600
#driver是浏览器对象
# windowHandle:一个页面的标识
# driver.set_window_size(1920,600)
#最大化显示窗口
# driver.maximize_window()
# 最小化
# time.sleep(2)
# driver.minimize_window()
# time.sleep(2)
# driver.find_element_by_id("kw").send_keys("selenium")
# driver.maximize_window()

#退出浏览器对象
# driver.quit()

二、控制浏览器的前进、后退、刷新
在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便的在浏览过的页面之间来回切换、刷新等,WebDriver也提供了对应的:
back():后退
forward():前进
refresh():刷新

#导包、创建浏览器对象、获取一下url地址
from selenium import webdriver
import time

#driver:就是一个普通的变量,dr也行
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")

#页面的前进后退操作
# driver.find_element_by_link_text("新闻").click()
# time.sleep(2)
# #后退到百度首页
# driver.back()
# time.sleep(2)
# #再前进到新闻页面
# driver.forward()
# time.sleep(2)
# #再执行一次刷新操作
# driver.refresh()

#退出浏览器对象
# driver.quit()

截屏操作:
将运行的脚本截屏到本地
driver.save_screenshot(“路径”)
driver.get_screenshot_as_file("{}.{}".format(“e:/aaa”,“png”))
driver.get_screenshot_as_file(r"e:\abc.png")

#导包、创建浏览器对象、获取一下url地址
from selenium import webdriver
import time

#driver:就是一个普通的变量,dr也行
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")

# driver.save_screenshot(r"e:\sss.png")
# driver.get_screenshot_as_file("{}.{}".format("e:/aaa","png"))
# driver.get_screenshot_as_file(r"e:\sss.png")

#退出浏览器对象
# driver.quit()

模拟浏览器关闭:
webdriver提供两种关闭的方法
quit():关闭浏览器,不管页面有几个窗口,一概关掉
close():只关掉了一个当前的窗口,而且关掉的是前面的一个
多窗口操作
每一个页面都一个句柄(handle)值,对一个页面来说是唯一,是页面的一个标识webdriver进行自动化测试,需要将driver绑定到页面句柄,你的driver只能控制你绑定句柄的这个页面,因此对不不同的窗口页面的元素,driver就不能操作了,下面就看如何解决这种多窗口问题。
实现需求:淘宝首页->聚划算->女装
1、拿到聚划算的句柄,返回的是一个列表
handles = driver.window_handles
2、将句柄绑定给driver,参数是列表中聚划算页面的句柄,x为0表示浏览器中的第一个窗口,1表示第二个窗口,-1表示最后一个窗口。
driver.switch_to_window(handles[x])

#导包、创建浏览器对象、获取淘宝的首页
from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("https://www.taobao.com")
#等待两秒钟
time.sleep(2)

#获取当前页面的句柄
# CDwindow-AA8085746F56C04363172064996E1A52
handler1 = driver.current_window_handle
print(handler1)

# 2、点击聚划算,进入聚划算页面。
driver.find_element_by_link_text("聚划算").click()
#等待两秒钟
time.sleep(2)

#第一步:获取所有打开窗口的句柄
handlers = driver.window_handles
# ['CDwindow-AA8085746F56C04363172064996E1A52', 'CDwindow-FD84D68BEFF3DBFFB64A5AC48E4F1703']
print(handlers)
#第二步:将聚划算的句柄绑定给driver
driver.switch_to_window(handlers[1])

# 3、选择“女装”,进入女装页面。
driver.find_element_by_link_text("女装").click()
#等待两秒钟
time.sleep(2)

# 4、返回到聚划算页面。
driver.back()
#等待两秒钟
time.sleep(2)

#关闭当前窗口(driver所绑定的哪个窗口)
driver.close()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值