2011-07-12 148 views
4

有谁知道如何可以根据使用Python绑定的webdriver将href点击一个链接。在waitr-webdriver你可以做这样的事情:Python中硒的webdriver点击功能

browser.link(:href => "http://www.testsite.com/pageOne.html").click 

但我还没有能够找到在蟒蛇的webdriver类似的功能。所有有有

find_element_by_class_name
find_element_by_css_selector
find_element_by_id
find_element_by_link_text
find_element_by_name
find_element_by_partial_link_text
find_element_by_tag_name
find_element_by_xpath

这些都是伟大的方法,但该网站我忒sting在链接中没有ID或类。所以链接唯一的独特之处就是href网址。

任何帮助将不胜感激。

回答

6

在内部,的Watir-的webdriver被转换该呼叫以找到href属性是一个给定值到找到的webdriver逐XPath表达式的链接。在自己的代码Mimicing这一点,Python来处理这个问题的适当办法是:

# assume driver is an instance of WebDriver 
# NOTE: this code is untested 
driver.find_element_by_xpath(".//a[@href='http://www.testsite.com/pageOne.html']") 

或者,你可以使用CSS选择器(这将是对IE更快)如下:

# again, assume driver is an instance of WebDriver 
# NOTE: this code is untested 
driver.find_element_by_css_selector("a[href='http://www.testsite.com/pageOne.html']") 
+0

谢谢您。我认为这会有很大帮助。 – hackthisjay

+0

您希望将此标记为可接受的答案吗? – JimEvans

+0

完全没问题 – hackthisjay