相信很多朋友在爬虫工作者经常会遇到“您的请求太过频繁,请稍后再试”,这个时候心里突然一慌,爬虫代码完全没有问题呀,可是为什么爬着爬着突然爬不动了呢?那么,很有可能,你的爬虫被识破了,轻则友好提示警告,重则将IP关入小黑屋。
这个时候该怎么办呢,有人出办法说用代理IP,直接不用怕,确实,用代理IP是一个解决问题的好办法。IP被封了就换新IP继续爬,或者用很多IP同时多线程爬,都很好用的。
于是,爬虫工作者用上了代理IP,重新继续爬,但好景不长,没有爬多久又被提示“您的请求太过频繁,请稍后再试”。再换IP还是被封,再换再封,封的越来越快,效率非常低下,这是为啥嘞?
那是因为,你用的代理IP凑巧也是别人用来访问相同的网站的,而且用的还比较频繁,这种情况一般出现在免费代理IP、普通代理IP或者开放代理IP,还有一些IP池比较小的共享IP池上。很多朋友总觉得IP池太大,我也用不了那多啊,不是浪费吗?能不能给个小点的IP池,价格再降低一些呢。这样的想法是不对的,IP池小,用的人多,那么项目冲突的几率也就越大,所以我们在找代理IP的时候,在保证IP有效率的同时IP池越大越好的,这样可以保证IP的新鲜度。
所以,当您遇到“您的请求太过频繁,请稍后再试”时,不要慌,要镇定,检查下自己的爬虫策略,是否真的访问太过频繁,检查下自己的代理IP是否真的比较干净,调整自己的策略,选择更加纯净的IP,就能有效的避免这个错误了。