我现在有这样一个需求: 在一个浏览器窗口打开 n 个选项卡,然后让这 n 个选项卡打开同一个 url 并且不停地随机定位这 n 个选项卡中任意一个的某些元素,该如何实现?根据各种 google ,百度等的参考资料,我写了下面代码:
url = r'xxxxxxx'
driver = webdriver.Firefox()
driver.get(url)
此时创建了第一个浏览器窗口,然后我用下面的方法新建选项卡:
driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + 't')
但是,这样新建的选项卡没有 handle ,没法 switch_to 这个选项卡,即使使用
driver.find_element_by_tag_name('body').send_keys(Keys.CONTROL + '\t')
做强制切换,也没法通过 find 等方法定位这个选项卡里面的标签元素。
有没有比较完美的解决方案?还是说 selenium 对选项卡操作不够支持?恳请大神指点。
1
13k 2016-04-05 22:50:31 +08:00
driver.window_handles 返回 tab 列表
然后 driver.switch_to_window 切换到对应的 tab |