300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python页面切换_Python+Selenium学习--窗口切换及操作元素

python页面切换_Python+Selenium学习--窗口切换及操作元素

时间:2024-06-22 17:38:37

相关推荐

python页面切换_Python+Selenium学习--窗口切换及操作元素

场景

有时候我们在测试一个web 应用时会出现多个浏览器窗口的情况,在selenium1.0 中这个问题比较难处理。webdriver 提供了相关相方法可以很轻松的在多个窗口之间切换并操作不同窗口上的元素

代码

#!/usr/bin/env python

# -*- codinfg:utf-8 -*-

'''

@author: Jeff LEE

@file: 多窗口处理.py

@time: -09-25 10:57

@desc:

'''

from selenium import webdriver

import time

driver = webdriver.Firefox()

driver.get('/')

driver.find_element_by_id("kw").clear()

driver.find_element_by_id("kw").send_keys("uniquefu")

driver.find_element_by_id("su").click()

time.sleep(5)

#获得当前窗口

nowhandle=driver.current_window_handle

# driver.find_element_by_xpath(".//*[@id='2']/h3/a").click()

driver.find_element_by_xpath(".//div[@id='2']/h3/a").click()

time.sleep(10)

#获取所有窗口

allhandles = driver.window_handles

time.sleep(5)

#循环判断窗口是否为当前窗口

for handle in allhandles:

if handle !=nowhandle:

driver.switch_to_window(handle)

print(driver.title)

time.sleep(5)

#切换到窗口接操作元素

driver.switch_to_window(nowhandle)

print(driver.title)

time.sleep(5)

driver.find_element_by_id("kw").clear()

driver.find_element_by_id("kw").send_keys("selenium")

driver.find_element_by_id("su").click()

time.sleep(5)

if driver.title.startswith('selenium'):

print('窗口切换及元素操作成功')

else:

print('窗口切换及元素操作失败')

driver.quit()

运行结果:

8月20日 随笔档案 - uniquefu - 博客园

uniquefu_百度搜索

窗口切换及元素操作成功

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。