我正在尝试使用selenium单击以下链接。
<div id="RECORD_2" class="search-results-item">
<a hasautosubmit="true" oncontextmenu="javascript:return IsAllowedRightClick(this);" class="smallV110" href="#;cacheurlFromRightClick=no"></a>
</div>
在执行代码之前,不知道要单击哪条记录。 Record_2有多个子节点,包含的是我想要点击的子节点。为了隐私起见,编辑链接。我尝试做类似的事情,其中name是记录变量,但它不起作用。
driver.find_element_by_css_selector("css=div#"RECORD_%s" % (name).smallV110")
我是硒的完全新手,所以我无法找到解决这个问题的方法。我将不胜感激任何帮助。谢谢!
答案 0 :(得分:1)
请注意,这不是Selenium IDE,您不需要选择器开头的css=
。
有多种方法可以找到链接元素,例如:
driver.find_element_by_css_selector(".search-results-item a.smallV110")
driver.find_element_by_css_selector("[id^=RECORD] a.smallV110") # id starts with "RECORD"
如果您事先知道id
值:
id_i_know = 2
driver.find_element_by_css_selector("[id=RECORD_%d] a.smallV110" % id_i_know)
您不必进行smallV110
类属性检查 - 我已添加它以增加不匹配a
内其他div
元素的可能性(不确定它们是什么)是的,你还没有发布整个HTML)。