我考虑过以下while writing an answer to this question。
假设我有一个深度嵌套的xml
这样的文件(但更多的嵌套和更长的时间):
<section name="1">
<subsection name"foo">
<subsubsection name="bar">
<deeper name="hey">
<much_deeper name"yo">
<li>Some content</li>
</much_deeper>
</deeper>
</subsubsection>
</subsection>
</section>
<section name="2">
... and so forth
</section>
len(soup.find_all("section"))
的问题在于,在执行find_all("section")
时,BS会不断搜索我知道不会包含任何其他section
标记的标记。
所以,有两个问题:
答案 0 :(得分:3)
BeautifulSoup
无法为您提供所发现的一个计数/数量。
但是,您可以改进的是:不要让BeautifulSoup
通过传递recursive=False
来搜索其他部分中的部分:
len(soup.find_all("section", recursive=False))
除了改进之外,lxml
可以更快地完成工作:
tree.xpath('count(//section)')