有关在python中轻松创建RSS / XML的提示

时间:2010-01-20 07:23:46

标签: python xml rss

我有一个列表,如果这3个项目:标题和链接和基于HTML的描述,我正在寻找一个库或外部工具,可以喂这3个项目,并创建一个rss xml页面。这样的事情存在吗?

3 个答案:

答案 0 :(得分:12)

我建议您使用模板并将项目列表提供给模板。

示例Jinja2模板(Atom,而不是RSS,但你明白了),假设这些项目是3元组(标题,链接,html):

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <author>Author's name</author>
    <title>Feed title</title>
    {%for item in items %}
    <entry>
        <title>{{item[0]}}</title>
        <link href="{{item[1]}}"/>
        <content type="html">{{item[2]}}</content>
    </entry>
    {%endfor%}
</feed>

将内容提供给模板并输出结果的代码:

import jinja2
env = jinja2.Environment(loader=jinja2.FileSystemLoader("."))
print env.get_template("feedtemplate.xml").render(items=get_list_of_items())

答案 1 :(得分:2)

答案 2 :(得分:1)

这可能不是您搜索的答案,但任何RSS方言都是一个相当简单的标准(尤其是0.9和2,并且对1也有约束)。

你可以考虑手工编写,如果你没有任何额外的限制(比如,你已经使用了Django,或者它将在更近的将来变得更复杂,或者它应该自动分发,或者你想要一次创建RSS 1,RSS 2和Atom,没有时间阅读3个规格。

规格: