我在 Python 中使用 BeautifulSuop4 时遇到了网络抓取
标签元素的问题。通常,元素会被赋予一个类或 id 标识符,我可以在其中使用:
.find_all(<p>, class_ = 'class-name')
找到元素,但是我试图隔离的元素位于连续的
标签列表中,所有这些标签都没有其元素的标识符。
有没有办法在具有标识符的标签之后选择每个
标签?或者也许是一种隔离我想要的特定
标签而没有任何共享类/ID 的方法?
答案 0 :(得分:0)
您可以使用 find_next_sibling 来查找元素的无类下一个兄弟元素。
考虑这个示例 HTML。第一个 div 有类“blah”。第二个 div 没有类,但在第一个 div 旁边。
html='<div><div class="blah">1</div><div>no class</div></div>'
import bs4
soup = bs4.BeautifulSoup(html,'html.parser')
soup.find('div',{'class':"blah"}).find_next_sibling()
#outputs second div without a class
<div>no class</div>