Python 如何通过标记名和类来查找列表元素?

Python 如何通过标记名和类来查找列表元素?,python,python-3.x,selenium,Python,Python 3.x,Selenium,我的网站有许多span标签: <span class="aaa bbb ccc ddd"> <span class="eee"></span> <span class="ggg"></span> <a href="#" class="hhh">Text</a> </span> 但我得

我的网站有许多span标签:

<span class="aaa bbb ccc ddd">
   <span class="eee"></span>
   <span class="ggg"></span>
   <a href="#" class="hhh">Text</a>
</span>
但我得到了错误信息:

selenium.common.exceptions.elementnotinteractiableexception:Message:element不可交互

请帮帮我,谢谢。

试试这个

elems = driver.find_elements_by_xpath("//span[@class='ddd']//a")

for elem in elems:
   elem.click()

我解决了我的问题:

  • 要查找具有标记名和类名的元素,我使用xpath:
elems=driver.find_elements\u by_xpath(//span[contains(@class,'ddd')]/a”)

  • 我可以点击的标签是标签,而不是我以前做的标签

此错误selenium.common.exceptions.ElementNotInteractitableException:Message:element not Interactitable表示在尝试调用click()时所需元素不可交互在它上面。所以我必须找到标记并单击标记中的标记?嗨,似乎是什么问题?Xpath解决了这个问题:
listSpan=driver.find_elements_by_Xpath(//span[contains(@class,'dynatree folder')]/a)for a in listSpan:#a.find_element_by_class_name(“statusDie”)a.click()time.sleep(5) 
我尝试了,但没有看到任何元素,可能是因为span标记有多个类组(aaa、bbb、ccc、ddd),我认为需要使用containOk,然后尝试这个,elems=driver。通过xpath(//span[contains(@class,'ddd')]//a)为elem中的elem查找元素:elem.click()
elems = driver.find_elements_by_xpath("//span[@class='ddd']//a")

for elem in elems:
   elem.click()