我正在进行一些网络爬虫类的工作,其中我正在查找网页中特定的术语并找到其在页面上的位置,然后将其缓存以供以后使用。我希望能够定期检查页面是否有任何重大变化。像md5这样的东西可以被简单地将当前日期和时间放在页面上来欺骗。
是否有任何适用于这种情况的哈希算法?
我正在进行一些网络爬虫类的工作,其中我正在查找网页中特定的术语并找到其在页面上的位置,然后将其缓存以供以后使用。我希望能够定期检查页面是否有任何重大变化。像md5这样的东西可以被简单地将当前日期和时间放在页面上来欺骗。
是否有任何适用于这种情况的哈希算法?
对于图片,http://www.phash.org/ 做了类似的事情。基本思路是:模糊图像,转换为灰度图像,执行离散余弦变换,并查看结果的左上象限(重要信息所在)。接下来,记录小于平均值的每个值为 0,大于平均值的每个值为 1。结果对于小变化非常好。
Min-Hashing 是另一个可能的方案。在文本中查找特征并将它们记录为值。连接所有这些值以生成哈希字符串。
对于上述两种方法,使用视点树进行近似匹配搜索。
很抱歉,但哈希算法是精确的。没有一种能够容忍微小差异的。你应该采取另一种方法。