如何在Python中为HTML文本生成目录?

1 投票
2 回答
1377 浏览
提问于 2025-04-15 18:56

假设我有一些HTML代码,像这样(可能是从Markdown或Textile等生成的):

<h1>A header</h1>
<p>Foo</p>
<h2>Another header</h2>
<p>More content</p>
<h2>Different header</h2>
<h1>Another toplevel header
<!-- and so on -->

我该如何用Python为它生成一个目录呢?

2 个回答

3

这里有一个使用lxml和xpath的例子。

from lxml import etree
doc = etree.parse("test.xml")
for node in doc.xpath('//h1|//h2|//h3|//h4|//h5'):
    print node.tag, node.text
6

可以使用一些HTML解析器,比如lxml或者BeautifulSoup,来找到所有的标题元素。

撰写回答