我有200个RSS源的列表,我必须下载。这是一个持续的过程 - 我必须下载每篇文章,没有任何东西可以丢失,但也没有重复。那么最好的做法应该记住饲料的最新更新并控制它在x小时间隔内的变化?如果下载程序将重新启动,如何处理?所以下载者应该记住,下载了什么,不要再下载它...使用python下载RSS
它的某处实施了吗?或文章的任何提示?谢谢
我有200个RSS源的列表,我必须下载。这是一个持续的过程 - 我必须下载每篇文章,没有任何东西可以丢失,但也没有重复。那么最好的做法应该记住饲料的最新更新并控制它在x小时间隔内的变化?如果下载程序将重新启动,如何处理?所以下载者应该记住,下载了什么,不要再下载它...使用python下载RSS
它的某处实施了吗?或文章的任何提示?谢谢
通常,这是你想要做什么:
您可以使用feedparser解析订阅源并将每个订阅源的最长发布时间存储在数据库中。
对于简单的数据库,您可以使用shelve。
sqlite3模块比数据库的shelve更好。 'sqlite3'实现了Python DB API,这意味着使用它的代码很容易移植到其他数据库,不存在'shelve'安全问题,其数据库可以被不同语言的程序使用。即使这些需求不是立即有利的,但它们的确向我建议,对于既不认识也不值得学习的人来说更值得学习。 – 2010-03-25 17:24:35
努力解决问题。 – 2010-03-27 20:53:10
我有每个饲料的类,它检查饲料,并记住最后如果修改(也选择新鲜的文章)。有关提要的信息也存储在数据库中。更新db中有关feed的行的方法可以在feed类中实现吗?因此,大约200个feed类实例必须记住连接到db并更新表中的主题行,或者可以在特殊类中实现它?我在面向对象的设计方面经验不足...... – 2010-03-27 21:22:14
即时通讯对不起,我不太明白..为什么你需要维持200分贝连接?如果它的模式,然后一个简单的模型将有一个表的饲料,以及供稿条目表。在每个Feed表格行中,您可以存储Feed url,标题,etags,标题等信息。然后在Feed条目表中,您可以获得实际的信息,如文章标题,描述等等,以便将条目链接到Feed,您可以在入口表中有一个外键映射到它的Feed表格行。 – z33m 2010-03-28 07:36:50