我有两个
bs4.element.ResultSet
对象。
我们叫他们
rs1
rs2
我希望一个结果集(我们称之为 rs ),结果集中包含所有结果。
我还需要弄明白:
答案 0 :(得分:5)
bs4.element.ResultSet
对象是list
的直接子类。您可以使用ResultSet.extend()
扩展一个或另一个结果集:
rs1.extend(rs2)
或简单地连接两个结果集:
newlist = rs1 + rs2
后者使用两个结果集的内容创建一个list
对象,这意味着您将丢失.source
属性。不是很大的损失,实际上,看起来没有什么在BeautifulSoup本身使用该属性。
有一些方法可以创建一个结果集,而不是连接两个结果集。可以找到结果类型的搜索将导致结果以文档源顺序返回,而不是背靠背返回。您可以使用find_all()
方法的列表参数,例如:
soup.find_all(['a', 'link'], href=True)
例如,会找到具有a
属性的所有link
和href
元素。