专题文章
时长:00:00更新时间:2020-11-27 14:16:19
使用python asyncio实现了一个异步代理池,根据规则爬取代理网站上的免费代理,在验证其有效后存入redis中,定期扩展代理的数量并检验池中代理的有效性,移除失效的代理。同时用aiohttp实现了一个server,其他的程序可以通过访问相应的url来从代理池中获取代理。源码;https://github.com/arrti/proxypool。环境;Python 3.5+。Redis;PhantomJS(可选)。Supervisord(可选)。因为代码中大量使用了asyncio的async和await语法,它们是在Python3.5中才提供的,所以最好使用Python3.5及以上的版本,我使用的是Python3.6。依赖;redis;aiohttp;bs4;lxml;
查看详情