用于 Python 的 RSS
2007-03-29 12:39:01 来源:WEB开发网安装 rssparser.py 也十分简单。请您下载 Python 文件(参阅参考资料),将“rssparser.py.txt”重命名为 “rssparser.py”,并将它复制到您的 PYTHONPATH 中。我同样建议您取得可选的 timeoutsocket 模块,它可以改进 Python 中的套接字操作的超时行为,这样有助于取得 RSS feeds 而不必为了防止错误就停止应用程序线程。
清单 3是一个等同于 清单 1的脚本,但它使用了 rssparser.py,而不是 RSS.py。
清单 3:使用一个简单的 rssparser.py 练习import rssparser
#Parse the data, returns a tuple: (data for channels, data for items)
channel, items = rssparser.parse("http://www.python.org/channews.rdf")
for item in items:
#Each item is a dictionary mapping properties to values
print "RSS Item:", item.get('link', "(none)")
print "Title:", item.get('title', "(none)")
print "Description:", item.get('description', "(none)")
如您所见,这段代码非常简单。RSS.py 和 rssparser.py 不能互相取代在很大程度上是因为前者有更多的功能部件,并且维护着 RSS 供给中更多的语法信息。后者更简单,并且是一个容错能力更强的解析器(RSS.py 解析器只能接受格式良好的 XML)。
它的输出应该与 清单 2中的输出相同。
结束语
用于 RSS 的 Python 工具有许多,并且由于篇幅所限我们也无法一一介绍。如果您想要研究其他的模块,Aaron Swartz 的 RSS 工具页面是一个起步的好地方。在 Python 中使用 RSS 非常容易,因为它可以使用所有的重要模块。这些模块屏蔽了由 RSS 的历史和流行带来的所有混乱。如果您的 XML 服务需求大部分都涉及到交换 Web 站点的描述性信息,我们极力推荐您在工作中使用最成功的 XML 服务技术。
下个月,我们将解释如何使用 Python 的 e-mail 包来编写 SMTP 上的 Web 服务。
更多精彩
赞助商链接