python-selenium和ChromeDriver:无法打开选项卡来控制它

时间:2016-06-27 11:28:34

标签: python selenium

我无法在Mac OS X上使用Python 2.7.1,Selenium 2.53.0,ChromeDriver 2.22和Google Chrome 51.0打开新标签 - 甚至点击链接并在新标签页面上打开它。< / p>

 import selenium.webdriver as webdriver
 import selenium.webdriver.support.ui as ui
 from selenium.webdriver.common.keys import Keys
 from selenium.webdriver.common.action_chains import ActionChains
 from time import sleep

 driver = webdriver.Chrome('/path/to/chromedriver')

 driver.get('https://twitter.com')
 driver.find_element_by_id('signin-email').send_keys(Keys.COMMAND + 't')

它会打开网址,但不会打开新标签页。

我还测试了使用ActionChains打开一个新选项卡,但没有成功。

打开新标签的唯一方法是通过execute_script()使用JavaScript,但在这种情况下我无法控制新标签。 switch_to.window()不起作用。

2 个答案:

答案 0 :(得分:1)

你应该尝试如下: -

driver.find_element_by_id('signin-email').send_keys(Keys.COMMAND + Keys.RETURN);

希望它会对你有所帮助.. :)

答案 1 :(得分:0)

您可以在按住ctrl键的同时点击链接,这将打开新标签页中的链接

actions = ActionChains(driver)
actions.key_down(Keys.CONTROL).perform()
driver.find_element_by_id('signin-email').click()
actions.key_up(Keys.CONTROL).perform()