c# - 构建一个显示最近更新的网站的 C# 应用程序

标签 c# html

我想构建一个 C# 应用程序:

  1. 浏览我的收藏夹列表(例如,在 IE 中)
  2. 检查自从我上次访问后网站是否更新
  3. 显示最近更新的 url 列表

第 2 点似乎有问题,因为 C# 的 HttpWebResponse.LastModified 属性不适用于某些博客和其他站点(它报告当前日期和时间)。

有什么想法吗? 谢谢

最佳答案

Last-Modified header 确实不是由某些 Web 服务器设置的,您对此无能为力。对于这些情况,您需要获取 HTML 并对数据进行哈希处理。如果哈希在下一次检索时匹配,则它(很可能)没有改变。

如果 HTML 中有不断变化的部分,您可以解析 HTML 树并删除其中经常变化的部分,例如 Google Ads。但这开始比仅仅检查标题要付出更多的努力,取决于您的实际用例是什么,看看它是否值得您付出努力。 HTML Agility Pack 是用于最后一项努力的好工具。

另一种可能产生更好结果的方法是测量 distance在页面的两个版本之间,并将高于特定阈值的版本标记为已更新。同样,这在很多情况下都会失败(现在会给出误报)。把它扔在这里,以防它能激发你做一些有用的事情。

关于c# - 构建一个显示最近更新的网站的 C# 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2276084/

相关文章:

c# - 视频文件流无法在 asp.NET Core 2.0 中的 Safari/iOS 设备上运行

html - 如何制作视频网格?

javascript - 从文本框中获取输入值

c# - Asp.Net core 中是否有任何可扩展点可以在startup.cs 之外的任何地方注册服务?

c# - Range.Value 在 VBA 和 C# 中产生不同的结果

javascript - 水平边框渐变

javascript - polymer 。纸张子菜单触发器适用于纸张项目内的两个元素

html - 图像和标题水平对齐时遇到问题

c# - 如何在 Realm 中使用 Linq 表达式检查可空类型的空值?

c# - 无法立即在 Npgsql 中收到多个通知