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