所以这个页面有几个
<a href="#" onclick="showpage('potato.php');">...
<a href="#" onclick="showpage('carrots.php');">...
<a href="#" onclick="showpage('chicken.php');">...
<a href="#" onclick="showpage('fish.php');">...
这些标签。虽然我可以做一个find_elements_by_xpath然后选择我想要的那个,有没有办法说具体,我想点击马铃薯链接?
答案 0 :(得分:3)
您可以使用find_element_by_partial_link_text
:
driver.find_element_by_partial_link_text("potato").click()
此处提供了更多关于按策略查找的文档:http://selenium-python.readthedocs.org/en/latest/locating-elements.html
编辑:谈论误读问题。我以为你要点击链接上的文字&#34;马铃薯&#34;。
如果您专门尝试查找onclick
的内容,可以使用以下内容:
driver.find_element_by_xpath("//a[contains(@onclick, 'potato.php')]").click()
答案 1 :(得分:1)
理查德的解决方案应该有效。你也可以使用像
这样的xpath//a/*[contains(text(),'Potato')]