gpt4 book ai didi

Python HTML 解析器

转载 作者:搜寻专家 更新时间:2023-10-31 22:03:55 26 4
gpt4 key购买 nike

我正在使用 HTMLParser 解析 html 文档,我想打印 p 标签开始和结束之间的内容

查看我的代码片段

    def handle_starttag(self, tag, attrs):
if tag == 'p':
print "TODO: print the contents"

最佳答案

根据@tauran 发布的内容,您可能想要执行以下操作:

from HTMLParser import HTMLParser

class MyHTMLParser(HTMLParser):
def print_p_contents(self, html):
self.tag_stack = []
self.feed(html)

def handle_starttag(self, tag, attrs):
self.tag_stack.append(tag.lower())

def handle_endtag(self, tag):
self.tag_stack.pop()

def handle_data(self, data):
if self.tag_stack[-1] == 'p':
print data

p = MyHTMLParser()
p.print_p_contents('<p>test</p>')

现在,您可能想要推送所有 <p>将内容放入列表中,并将其作为结果或类似的东西返回。

TIL:当像这样使用库时,您需要考虑堆栈!

关于Python HTML 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7204056/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com