使用lxml.html拆分HTML文档
我有一个HTML文档,里面包含了多个章节的内容,每个章节的开头都是一个H1标签。请问我怎么把这个文档分成多个HTML小片段,每个片段都以对应章节的H1标签开始。我想过先美化一下HTML,然后逐行处理内容……不过这样有点像是变通的办法。有没有更好的方法可以用lxml来实现呢?
1 个回答
6
tree = lxml.html.document_fromstring(htmltext)
for element in tree.iter():
if element.tag == 'h1':
for subelement in element:
// do stuff
这段代码会找到所有的h1标签,然后你可以遍历它里面的所有子元素。你也可以直接把这个元素里的所有文本提取出来,作为一个字符串,然后用这个字符串做你想做的事情。随你怎么处理都可以。http://lxml.de/ lxml非常棒,我推荐你使用它。我之前也用过这个库,更新代码的时候总是把网站打开,遇到问题就去查阅一下 :)