异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (三)

内容提要:

 如果说,爬取网页数据的时候,我们使用了异步,那么将数据放入redis里面,其实也需要进行异步;当然,如果使用多线程或者redis线程池技术也是可以的,但那会造成冗余;
 因此,在测试完多线程redis搭配异步爬虫的时候,我发现效率直接在redis这里被无限拉低下来!

因此:

 最终的redis库,我选择aioredis(redis的异步库);

效果:异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (三)_第1张图片

(对上万个ip进行了检测,最终只得到这么几个....)

完成aioredis的时候,肯定会遇到一个bug,我先写在这里;当你们遇到的时候,再回头来看,没遇到前先跳过:

aioredis报错: duplicate base class TimeoutError

解决办法:

1.异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (三)_第2张图片
异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (三)_第3张图片

你可能感兴趣的:(15天玩转高级python,redis,数据库,缓存)