如何使用PyRSS2Gen创建包含HTML的额外RSS项元素?

1 投票
1 回答
789 浏览
提问于 2025-04-15 18:02

我正在使用 PyRSS2Gen 来生成一个RSS订阅源。我已经成功地扩展了它,为每个RSS项目添加了一个额外的元素:

class FullRSSItem(PyRSS2Gen.RSSItem):

    def __init__(self, **kwargs):
        if 'content' in kwargs:
            self.content = kwargs['content']
            del kwargs['content']
        else:
            self.content = None
        PyRSS2Gen.RSSItem.__init__(self, **kwargs)


    def publish_extensions(self, handler):
        PyRSS2Gen._opt_element(handler, "content:encoded", '<![CDATA[' + self.content + ']]>')

但是,我发现self.content里面包含了HTML标签,而当生成订阅源文件时,所有的尖括号(包括<![CDATA部分里的)都变成了&lt;和&gt;。

我该如何使用PyRSS2Gen添加一个包含HTML的额外RSS项目元素呢?

1 个回答

0

我最后放弃了使用CDATA包裹的想法,直接把整个文本进行了编码。看起来这样也能正常工作。

撰写回答