如何检查网页内容是否已更改?

Sav*_* KP 8 hash compare web-crawler python-2.7

基本上我正在尝试运行一些代码(Python 2.7),如果网站上的内容发生变化,否则稍等一会儿再检查一下.

我正在考虑比较哈希值,问题是如果页面改变了单个字节或字符,则哈希值会有所不同.因此,例如,如果页面在页面上显示当前日期,则每次散列都不同并告诉我内容已更新.

那么......你会怎么做?你会看看HTML 的Kb大小吗?您是否会查看字符串长度并检查例如长度是否已更改超过5%,内容是否已"更改"?或者是否存在某种哈希算法,如果只更改了字符串/内容的一小部分,则哈希保持不变?

关于最后修改 - 遗憾的是并非所有服务器都正确地返回此日期.我认为这不是可靠的解决方案.我认为更好的方法 - 结合散列和内容长度解决方案.检查哈希值,如果更改了 - 检查字符串长度.

Sup*_*ova 1

希望这可以帮助。

存储 html 文件——两个版本..

一个是一小时前拍摄的 html。-- 第一个.html

第二个是现在拍摄的 html -- secondary.html

运行命令:

$ diff first.html second.html > diffs.txt
Run Code Online (Sandbox Code Playgroud)

如果差异有一些文本,则文件已更改。