python rss提要生成器提供了错误的格式

2024-10-01 01:40:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试为我的flask应用程序呈现一个rss提要的示例。 我有以下代码:

from flask import Flask, render_template, flash, redirect, make_response
from config import Config
from feedgen.feed import FeedGenerator
app = Flask(__name__)
 strengs = ["noget", "lorem ipsum", "dingledongle"]
 @app.route('/xml2')
def xml2():
    fg = FeedGenerator()
    fg.title('Feed title')
    fg.description('Feed description')
    fg.link(href='https://awesome.com')

    f = open("xss.txt", "r")

    n = 0 

    for i in strengs:

        ns = str(n)

        fe = fg.add_entry()
        fe.title("hi")
        fe.link(href="dr.dk")
        print(i)
        fe.description(i)
        fe.guid(ns, permalink=False) # Or: fe.guid(article.url, permalink=True)
        fe.author(name="garse", email="asse@itu.dk")
        n = n + 1

    response = make_response(fg.rss_str())
    response.headers.set('Content-Type', 'application/rss+xml')

    return response

所以我只想呈现一个包含3篇文章的rss提要,其中包含这3个字符串。呈现的xml文件在我看来是正确的:

<rss version="2.0">
<channel>
<title>Feed title</title>
<link>https://awesome.com</link>
<description>Feed description</description>
<docs>http://www.rssboard.org/rss-specification</docs>
<generator>python-feedgen</generator>
<lastBuildDate>Thu, 08 Apr 2021 15:20:18 +0000</lastBuildDate>
<item>
<title>dingledongle</title>
<link>dr.dk</link>
<description>dingledongle</description>
<author>asse@itu.dk (garse)</author>
<guid isPermaLink="false">2</guid>
</item>
<item>
<title>lorem ipsum</title>
<link>dr.dk</link>
<description>lorem ipsum</description>
<author>asse@itu.dk (garse)</author>
<guid isPermaLink="false">1</guid>
</item>
<item>
<title>noget</title>
<link>dr.dk</link>
<description>noget</description>
<author>asse@itu.dk (garse)</author>
<guid isPermaLink="false">0</guid>
</item>
</channel>
</rss>

但是,当我让我的rss阅读器(raven reader)读取这个xml文件时,它只生成一个article,其中只显示第一篇文章,其中包含“noget”描述

如何在rss提要中呈现多篇文章?我做错什么了吗


Tags: titleresponsefeedlinkdescriptionitemauthorrss