共计 305 个字符,预计需要花费 1 分钟才能阅读完成。
对于网络爬虫如何防止环路(死循环)与防止陷阱(出不来)?
那么咱们如何避免拜访曾经拜访过的页面呢?设置一个标记即可。整个互联网就是一个图构造,咱们通常应用 DFS(深度优先搜寻)和 BFS(广度优先搜寻)进行遍历。所以,像遍历一个简略的图一样,将拜访过的结点标记一下即可。
解决方案
1. 限定爬虫的最大循环次数,对于某 Web 站点拜访超过肯定阈值就跳出,防止有限循环;
2. 保留一个已拜访 Url 列表,记录该页面是否被拜访过的;
对于抓取策略
1. 调度爬虫抓取压力,限度拜访次数与工夫,超时后主动切换。
2. 限度 Url 的字节长度,环路可能会使得 Url 长度减少。
3. 去掉无用字符与 URL 别名,制订 Url 的标准。
快搜常识搜寻,未完待续!
正文完