从多个 div 中抓取第一个 child 的属性(selenium)
Scraping the attribute of the first child from multiple div (selenium)
我正在尝试从多个 div.
中删除第一个 child(跨度)的 class 名称
这里是 html 代码:
<div class="ui_column is-9">
<span class="name1></span>
<span class="...">...</span>
...
<div class ="ui_column is-9">
<span class="name2></span>
<span class="...">...</span>
...
<div class ..
URL 页面的完整代码。
我正在使用前五个代码完成此任务 div:
i=0
liste=[]
while i <= 4:
parent= driver.find_elements_by_xpath("//div[@class='ui_column is-9']")[i]
child= parent.find_element_by_xpath("./child::*")
class_name= child.get_attribute('class')
i = i+1
liste.append(nom_classe)
但是你知道有没有更简单的方法呢?
您可以直接获取所有这些前 span
个元素,然后提取它们的 class
属性值,如下所示:
liste = []
first_spans = driver.find_elements_by_xpath("//div[@class='ui_column is-9']//span[1]")
for element in first_spans:
class_name= element.get_attribute('class')
liste.append(class_name)
您还可以仅通过限制循环 5 次迭代来从前 5 个元素中提取 class
属性值
UPD
好吧,更新你的问题后,答案变得不同并且更简单。
您可以直接获取所需的元素并提取其 class name 属性值,如下所示:
liste = []
first_spans = driver.find_elements_by_xpath("//div[@class='ui_column is-9']//span[contains(@class,'ui_bubble_rating')]")
for element in first_spans:
class_name= element.get_attribute('class')
liste.append(class_name)
我正在尝试从多个 div.
中删除第一个 child(跨度)的 class 名称这里是 html 代码:
<div class="ui_column is-9">
<span class="name1></span>
<span class="...">...</span>
...
<div class ="ui_column is-9">
<span class="name2></span>
<span class="...">...</span>
...
<div class ..
URL 页面的完整代码。
我正在使用前五个代码完成此任务 div:
i=0
liste=[]
while i <= 4:
parent= driver.find_elements_by_xpath("//div[@class='ui_column is-9']")[i]
child= parent.find_element_by_xpath("./child::*")
class_name= child.get_attribute('class')
i = i+1
liste.append(nom_classe)
但是你知道有没有更简单的方法呢?
您可以直接获取所有这些前 span
个元素,然后提取它们的 class
属性值,如下所示:
liste = []
first_spans = driver.find_elements_by_xpath("//div[@class='ui_column is-9']//span[1]")
for element in first_spans:
class_name= element.get_attribute('class')
liste.append(class_name)
您还可以仅通过限制循环 5 次迭代来从前 5 个元素中提取 class
属性值
UPD
好吧,更新你的问题后,答案变得不同并且更简单。
您可以直接获取所需的元素并提取其 class name 属性值,如下所示:
liste = []
first_spans = driver.find_elements_by_xpath("//div[@class='ui_column is-9']//span[contains(@class,'ui_bubble_rating')]")
for element in first_spans:
class_name= element.get_attribute('class')
liste.append(class_name)