据我所知,在selenium2library中没有直接的关键字来打开新标签 . 我已经看到下面的代码在IE(默认浏览器)中为给定的URL打开一个新选项卡
webbrowser.open_new_tab(url)
但我想写一个关键字,在当前运行的浏览器上打开一个新标签(可能是任何浏览器) .
您可以使用AutoIt库在机器人框架工作中模拟KeyStroke
Import AutoItLibrary Import Selinium2library send "^t" Open the New Tab
以同样的方式模拟他人
Ctrl Tab - 切换到下一个选项卡 - 换句话说,右侧的选项卡 . (Ctrl Page Up也可以,但不能在Internet Explorer中使用 . )
Ctrl Shift选项卡 - 切换到上一个选项卡 - 换句话说,切换到左侧的选项卡 . (Ctrl Page Down也可以,但不能在Internet Explorer中使用 . )
Ctrl W,Ctrl F4 - 关闭当前选项卡 .
Ctrl Shift T - 重新打开上一个关闭的选项卡
您可以使用Javascript关键字
Execute Javascript window.open('NewTabUrl');
例:
Execute Javascript window.open('https://www.google.com');
它很草率,但您可以尝试:
from selenium.webdriver.common.keys import Keys actions.key_down(Keys.CONTROL) element.send_keys('t') actions.key_up(Keys.CONTROL)
我不知道与浏览器无关的方法 .
打开新选项卡后,您可以通过查找带有 driver.window_handles 的窗口句柄并切换到相应的句柄来更改选项卡: browser.switch_to_window(handle)
driver.window_handles
browser.switch_to_window(handle)
3 回答
您可以使用AutoIt库在机器人框架工作中模拟KeyStroke
以同样的方式模拟他人
Ctrl Tab - 切换到下一个选项卡 - 换句话说,右侧的选项卡 . (Ctrl Page Up也可以,但不能在Internet Explorer中使用 . )
Ctrl Shift选项卡 - 切换到上一个选项卡 - 换句话说,切换到左侧的选项卡 . (Ctrl Page Down也可以,但不能在Internet Explorer中使用 . )
Ctrl W,Ctrl F4 - 关闭当前选项卡 .
Ctrl Shift T - 重新打开上一个关闭的选项卡
您可以使用Javascript关键字
例:
它很草率,但您可以尝试:
我不知道与浏览器无关的方法 .
打开新选项卡后,您可以通过查找带有
driver.window_handles
的窗口句柄并切换到相应的句柄来更改选项卡:browser.switch_to_window(handle)