我有很多具有相同类名但具有不同 id 的列表元素。
示例:
<li class="test class" id="111-11-111"> pass </li>
<li class="test class" id="222-22-222"> pass </li>
<li class="test class" id="333-33-333"> pass </li>
我需要提取这些 id。 对于单个列表元素来说这不是问题:
driver.find_element_by_css_selector(".test.class").get_attribute("id")
但我需要以某种方式找到下一个 ID。
如果尝试 find_elements_by...
我收到以下异常:
'list' object has no attribute
'get_attribute'
.
有办法提取它们吗?
最佳答案
你可以使用xpath:
listOfLi = driver.find_elements_by_xpath("//li[class='test class']")
或 CSS 选择器:
listOfLi = driver.find_elements_by_css_selector(".test.class")
您可以通过一一索引来访问每个 li 元素:
for eachLiElement in listOfLi:
string = eachLiElement.get_attribute("id")
string
将为您提供每个元素的 id。
如果只想获取第二个id,可以通过
secondId = listOfLi[1].get_attribute("id")
secondId
将具有 222-22-222
关于python - 是否可以从多个同名元素中获取 get_attribute() ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38601055/