我需要获取一些 RSS 源,并将添加到其中的所有项目存档。我以前从未使用过或创建过 RSS,但我了解 xml,因此该格式看起来非常直观。
我知道如何解析提要:How can I get started making a C# RSS Reader?
我知道我不能依赖提要服务器来提供完整的历史记录:Is it possible to get RSS archive
我知道我必须有一些围绕重复项的自定义逻辑:how to check uniqueness (non duplication) of a post in an rss feed
我的问题是,如何确保我不会错过任何元素?我最初的计划是编写一个解析器,其中对于提要中的每个项目: 1)检查是否已经在归档数据库中 2)如果没有,则添加到数据库中 如果我将其安排为每天运行一次,我是否可以确信我不会丢失任何项目?
最佳答案
这取决于提要,某些网站非常频繁地发布文章,并且可能将其 RSS 提要配置为仅显示最近的 10 篇文章。有些网站会采取相反的做法。
理想情况下,您的应用应该从网站“学习”频率,并根据学习到的频率调整自身以 ping 这些网站。 (例如:如果每次 ping 时都看到新的独特文章,则需要更频繁地 ping ,另一方面,如果多次尝试看到同一组文章,则下次可能会放弃)。
关于rss - 如何归档 RSS 提要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10404098/