我正在用python处理Selenium问题。我正在尝试用 h1 标签收集每个元素,并在该标签之后,我想获取最接近的 h2 和段落文本标签并将该数据放入对象中。
我当前的代码如下所示:
cards = browser.find_elements_by_tag_name("h1")
ratings = browser.find_elements_by_tag_name('h3')
descriptions = browser.find_elements_by_tag_name('p')
print(len(cards))
print(len(ratings))
print(len(descriptions))
这会产生不一致的数字。
要获取<h1>
标记元素,然后获取下一个同级<h2>
和<p>
标记元素,可以使用以下解决方案:
cards = browser.find_elements_by_tag_name("h1")
ratings = browser.find_elements_by_xpath("//h1//following-sibling::h2")
descriptions = browser.find_elements_by_xpath("//h1//following-sibling::p")
print(len(cards))
print(len(ratings))
print(len(descriptions))