从解析生成简单的RSS提要

2024-09-30 01:33:34 发布

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

你好栈溢出我有一些代码,抓取一个网站和解析小部分数据如下

System MA
user id =  2084
username =  XYZ90
selection =  pnq
decimal =  6.000
Percentage =  19.1176470588 %

System NA
user id =  2086
username =  pron1
selection =  abc
decimal =  13.000
Percentage =  13.1147540984 %

System M
user id =  1664
username =  Chrisod
selection =  pleader
decimal =  15.000
Percentage =  16.091954023 %

以上内容是通过以下过滤器打印出来的:

^{pr2}$

这都是由于从一个循环的webscraper打印不同参数的结果。我想做的是将每一个都导出为RSS。因此,以上内容将作为三个RSS帖子存在于RSS提要中。我研究过一些模块,比如django,这似乎是一个工具箱,用于许多东西,而不是RSS,本质上,我在寻找最简单、最简单的RSS解决方案?如有任何关于适当方法和/或模块的建议或意见,我们将不胜感激。 谨致问候


Tags: 模块数据代码id内容网站usernamesystem
1条回答
网友
1楼 · 发布于 2024-09-30 01:33:34

我注意到你把你的问题贴上了Django的标签。如果要基于这个问题构建一个Django应用程序,那么syndication framework就是您想要使用的。但是,除非您计划使用Django的其他组件,例如数据库和/或模板语言,否则这样做是不值得的。在

然而,你要求的是“最简单、最简单”的解决方案。我喜欢Django,只需要几分钟就可以建立一个应用程序,所以对我来说,完成整个项目最简单的方法可能就是制作一个快速的Django应用程序。最简单的解决方案可能是手动创建提要,不应该那么难;类似于:

inp="""System MA
user id =  2084
username =  XYZ90
selection =  pnq
decimal =  6.000
Percentage =  19.1176470588 %

System NA
user id =  2086
username =  pron1
selection =  abc
decimal =  13.000
Percentage =  13.1147540984 %

System M
user id =  1664
username =  Chrisod
selection =  pleader
decimal =  15.000
Percentage =  16.091954023 %"""

inp=inp.split('\n\n')

rss_start="""<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="2.0">

<channel>
  <title>Your title</title>
  <link>http://yoursite.com</link>
  <description>Your discription</description>
"""

rss_end="""</channel>

</rss> """

def description(item):
    return item

def title(item):
    return item.split('\n')[0]

def link(item):
    return 'http://mysite.com/' + item.split('\n')[0]

rss_items=[]
for counter, item in enumerate(inp):
    rss_items.append("""
  <item>
    <title>%s</title>
    <link>%s</link>
    <description>%s</description>
    <guid>counter</guid>
  </item>""" % (title(item),description(item),link(item)))

rss_output=rss_start+''.join(rss_items)+rss_end

您可能还想添加<pubDate>标记。并确保您的<guid>是唯一的。在

注意:rss模板是从w3复制的学校网在

相关问题 更多 >

    热门问题