2013-08-24 39 views
4

我想点击Selenium中的Google首页上的Gmail链接和Python上的WebDriver。我的代码基本上复制了一个在这里找到:Why Cant I Click an Element in Selenium?selenium python点击元素什么也没有发生

我的代码:

import selenium.webdriver as webdriver 
firefox = webdriver.Firefox() 
firefox.get("http://www.google.ca") 
element = firefox.find_element_by_xpath(".//a[@id='gb_23']") 
element.click() 

的webdriver的加载页面,然后什么也没有发生。我尝试过使用ActionChains和move_to_element(element),单击(element),然后执行(),但没有任何反应。

+0

xpath is从来没有一件好事与硒一起使用。尝试严格按id搜索,因为你有它 – Greg

+0

该代码适用于我..你可以测试相同的代码,但使用铬而不是Firefox? – alecxe

+0

你可以尝试降级Firefox。我读过新版本的Firefox经常会破坏Selenium的交互。 – Richard

回答

5

使用find_element_by_id方法:

element = firefox.find_element_by_id("gb_23") 
element.click() 

或纠正你的XPath:

"//a[@id='gb_23']" 

Here you have nice tutorial.

+0

我刚刚尝试运行这两个选项。什么都没有发生...... –

+0

嗯,奇怪...试试吧:'firefox.click(“xpath = // a [@ id ='gb_23']”)' – swietyy

+0

我降级到了20版本,它工作。谢谢。 –

0

试试这个,因为我不能看到HTML这个ID:

driver = webdriver.Firefox() 
driver.get("http://www.google.ca") 
element = driver.find_element_by_link_text("Gmail") 
element.click() 
相关问题