按特定的类名选择元素

时间:2017-10-24 10:27:54

标签: python selenium classname

我想按类名选择元素,但只能使用特定名称(first-level-li),如果有其他类具有我想要选择的名称但是后跟其他名称

(<li class="first-level-li no-second-level shop-link">
<li class="first-level-li  no-second-level  ">)

,我需要忽略它们,我该怎么做? 例如:

firstLevelMenu = self.driver.find_elements_by_class_name ( "first-level-li" )

网站

<li class="first-level-li no-second-level shop-link">
<li class="first-level-li  no-second-level  ">
<li class="first-level-li  ">

3 个答案:

答案 0 :(得分:1)

firstlevelMenu = self.driver.find_elements_by_xpath("//li[@class='first-level-li  ']")

文档在这里http://selenium-python.readthedocs.io/locating-elements.html

答案 1 :(得分:0)

您可以使用xpath执行相同的操作:

self.driver.find_elements_by_xpath("//li[@class='first-level-li']")

这会找到具有确切类名的元素。

答案 2 :(得分:0)

您可以使用上面提到的xpath和以下函数,它将直接返回特定元素的对象,而不是列表。

self.driver.find_element_by_xpath(&#34; // li [@class =&#39; first-level-li&#39;]&#34;)