web自动化中如何进行窗口切换

一、代码示例

import time

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
driver.maximize_window()
driver.implicitly_wait(10)

# 定位百度首页输入框,输入搜索内容
driver.find_element("id","kw").send_keys("中国政府网")

# 定位百度一下按钮,点击进行搜索
driver.find_element("id","su").click()

# 进入百度搜索结果页,点击进入中国政府网官网
driver.find_element("xpath","//a[text()='中国政府网']").click()

# 打印当前窗口,由于未进行窗口切换,虽然页面显示的是中国政府网当前窗口,但是与程序获取的窗口地址不一致的
print("未进行页面切换,程序获取的窗口地址:",driver.current_url)


# 讲解如何进行窗口切换
# 首先获取打印所有的窗口地址,句柄(handles)就相当于窗口的id
print(driver.window_handles)
# ['CDwindow-C4EA928B8EC855AFD724F4611C1CE9F4', 'CDwindow-BEC1CDCA435A91E37CAE0894B66D261D']

# 利用索引去进行窗口的却换,切换到最新的窗口页面
driver.switch_to.window(driver.window_handles[-1])

# 等待2s
time.sleep(2)

print("切换窗口后,程序获取的地址:",driver.current_url)

# 关闭当前窗口
driver.close()

运行打印结果:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

测试小白00

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

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

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

打赏作者

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

抵扣说明:

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

余额充值