1

我收到以下错误消息

HTMLParseError: unknown status keyword u'cadta' in marked section, at line 1, column 54

当我尝试使用以下代码删除 HTML 标记时:

from HTMLParser import HTMLParser
class MLStripper(HTMLParser):
    def __init__(self):
        self.reset()
        self.fed = []

    def handle_data(self, d):
        self.fed.append(d)

    def get_data(self):
        return ''.join(self.fed)


def strip_tags(html):
    s = MLStripper()
    s.feed(html )
    return s.get_data()

通过调用来获取这段文本strip_tags()

how to Fetch data from an XML file with tags <title> <![CADTA[text here]]> </title>?

这里发生了什么,我该如何解决这个问题?

谢谢你。

4

2 回答 2

2

应该是CDATA,不是CADTA。检查你的语法。

于 2013-10-29T01:23:27.777 回答
1

我添加了一个 Try / except 来捕获错误,只是不删除违规字符串的标签:

def strip_tags(html):
    s = MLStripper()

    try:
        s.feed(html.decode("utf-8"))
        return s.get_data()
    except:
        return html
于 2013-11-05T17:02:25.443 回答