Python 2.7 如何使用robot框架在同一浏览器中打开新选项卡
据我所知,在Selenium2库中没有直接的关键字来打开新选项卡。我看到了下面的代码,它在IE(默认浏览器)中为给定URL打开了一个新选项卡Python 2.7 如何使用robot框架在同一浏览器中打开新选项卡,python-2.7,selenium-webdriver,robotframework,Python 2.7,Selenium Webdriver,Robotframework,据我所知,在Selenium2库中没有直接的关键字来打开新选项卡。我看到了下面的代码,它在IE(默认浏览器)中为给定URL打开了一个新选项卡 webbrowser.open_new_tab(url) 但我想写一个关键字,在当前正在运行的浏览器(可能是任何浏览器)上打开一个新选项卡。这很草率,但您可以尝试: from selenium.webdriver.common.keys import Keys actions.key_down(Keys.CONTROL) element.send_
webbrowser.open_new_tab(url)
但我想写一个关键字,在当前正在运行的浏览器(可能是任何浏览器)上打开一个新选项卡。这很草率,但您可以尝试:
from selenium.webdriver.common.keys import Keys
actions.key_down(Keys.CONTROL)
element.send_keys('t')
actions.key_up(Keys.CONTROL)
我不知道浏览器不可知的方法
打开新选项卡后,您可以通过使用
驱动程序查找窗口句柄来更改选项卡。窗口句柄
并切换到相应的句柄:浏览器。切换到窗口(句柄)
您可以使用AutoIt库模拟机器人框架中的击键
Import AutoItLibrary
Import Selinium2library
send "^t" Open the New Tab
以同样的方式模仿他人
Ctrl+Tab–切换到下一个选项卡–换句话说,就是右侧的选项卡。(Ctrl+Page Up也可以,但不适用于Internet Explorer。)
Ctrl+Shift+Tab–切换到上一个选项卡–换句话说,就是左侧的选项卡。(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');
你可以试试
Execute Javascript window.open('')
Get Window Titles
Select Window title=undefined
Go To ${URL}
此代码有助于在同一浏览器中打开新选项卡,并收集同一浏览器中所有选项卡的窗口标题。
根据窗口标题名称,它标识新打开的选项卡并启动URL请参见问题。同样,使用
HTTP\u USER\u AGENT
返回浏览器名称。假设它返回“firefox”,然后将其传递给current\u browser=webbrowser.get('firefox')
和current\u browser.open('http://www.google.com)
这将在打开的浏览器中自动打开一个新选项卡(如果可能)。希望这有帮助。我不确定它是否有效,这就是为什么我不把它作为一个答案发布。这是一个有效的答案。Execute Javascript window.open(“”)
可以替换为新的SeleniumLibrary关键字,按无CTRL+T键
以更优雅的方式打开新选项卡。