使用Python从HTML生成目录

Oli*_*Oli 5 html python beautifulsoup tableofcontents

我正在尝试根据HTML <h2><h3>标签从HTML块(不是完整的文件 - 只是内容)生成目录.

到目前为止,我的计划是:

  • 使用提取标题列表 beautifulsoup

  • 在内容上使用正则表达式在标题标记之前/之内放置锚链接(这样用户可以单击目录) - 可能有一种替换内部的方法beautifulsoup

  • 输出指向预定义位置中标题的嵌套链接列表.

当我这样说时听起来很容易,但事实证明后方有点痛苦.

有什么东西可以一次性完成这一切所以我不会浪费下几个小时重新发明轮子吗?

一个例子:

<p>This is an introduction</p>

<h2>This is a sub-header</h2>
<p>...</p>

<h3>This is a sub-sub-header</h3>
<p>...</p>

<h2>This is a sub-header</h2>
<p>...</p>
Run Code Online (Sandbox Code Playgroud)

nos*_*klo 2

使用lxml.html