您的位置:首页 > 新闻资讯 >文章内容
一个免费的异步爬虫代理池如何搭建?
来源:互联网 作者:admin 时间:2019-04-11 10:23:45

一个免费的异步爬虫代理池如何搭建?技术进步,自然各种网站也会加强自身的防御,现在爬虫如此多,不防着点,容易出问题。因此,换IP访问网站是目前大家都比较常用的突破反爬虫的方法。


本文介绍了编写一个免费的异步爬虫代理池的方法。这是以 Python asyncio 为基础,充分利用 Python 的异步性能,异步处理比同步处理能提升成百上千倍的效率,速度堪比GO语言。

一个免费的异步爬虫代理池如何搭建?

项目介绍

本项目通过爬虫抓取互联网上免费代理网站的IP,并且进行异步检测是否可用,如果可用就放入数据库。定时对数据库中的代理进行维护,然后通过web api的形式供外部使用。

项目运行环境

项目使用了 sanic,一个异步网络框架。所以建议运行 Python 环境为 Python3.5+,并且 sanic 不支持 Windows 系统,Windows 用户可以考虑使用 Ubuntu on Windows。

总体架构

一个免费的异步爬虫代理池如何搭建?


项目主要几大模块分别是爬取模块,存储模块,校验模块,调度模块,接口模块。

  • 爬取模块crawler.py

负责爬取代理网站,并将所得到的代理存入到数据库,每个代理的初始化权值为 INIT_SCORE。

  • 存储模块database.py

封装了 Redis 操作的一些接口,提供 Redis 连接池。

  • 校验模块validator.py

验证代理 IP 是否可用,如果代理可用则权值 +1,最大值为 MAX_SCORE。不可用则权值 -1,直至权值为 0 时将代理从数据库中删除。

  • 调度模块scheduler.py

负责调度爬取器和校验器的运行。

  • 接口模块webapi.py

使用 sanic 提供 WEB API (服务器提供接口)。

如何使用

一个免费的异步爬虫代理池如何搭建?


安装 Redis

项目数据库使用了 Redis,Redis 是一个开源(BSD 许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。所以请确保运行环境已经正确安装了 Redis。安装方法请参照官网指南。

项目源码

点击关注、转发、私信小编"史上最强代理池",就能免费获取强大的异步爬虫代理池项目源码。

安装依赖

一个免费的异步爬虫代理池如何搭建?

使用API获取代理

运行代码后,访问http://127.0.0.1:5000/进入主页,如果显示'Welcome',证明成功启动。

一个免费的异步爬虫代理池如何搭建?

访问http://127.0.0.1:5000/get可以获取一个可用代理。

一个免费的异步爬虫代理池如何搭建?

也可以在程序代码中用相应的语言获取,例如:

一个免费的异步爬虫代理池如何搭建?


Sanic 性能测试

使用 wrk 进行服务器压力测试。基准测试 30 秒, 使用 12 个线程, 并发 400 个 http 连接。测试 http://127.0.0.1:3289/

一个免费的异步爬虫代理池如何搭建?

⭐️ Requests/sec: 11387.89

我们看到了什么?平均每秒钟11387.89个请求,就问你们怕不怕。机器性能更好一下,就是一波DOS攻击了。

4实际代理性能测试

实测效果

一个免费的异步爬虫代理池如何搭建?

可以看到其实性能是非常棒的,成功率极高。

一个免费的异步爬虫代理池如何搭建?上文已经介绍得非常的清楚了,大家可以尝试自己去测试下效果的,若是想使用付费代理,也可以找机灵代理的,效果更好。


相关文章内容简介
推荐阅读
  • 31 2019-05
    代理IP的实际用途

    代理IP的实际用途都有哪些?随着人们的生活水准越来越高,各个领域都开始追求效率,所以互联网产品开发也开始注重这一方面,开发出的产品都在往简单易使用的方向发展。代理IP的目的就是让

  • 16 2019-06
    付费代理ip哪个好?

    付费代理ip哪个好?都说免费的代理ip不行,没有质量,还没有效率,怎么也不如付费的,但付费的就真的好用了么?

  • 22 2019-05
    用动态IP的好处与坏处

    用动态IP的好处与坏处有哪些?动态IP和静态IP是完全不同的定义,动态IP是不可以直接上网的,动态IP就是在你上网的时候电信会给你随机分配一个IP的地址,使用动态IP的好处也是有很多的。

  • 19 2019-03
    静态代理模式的简单分析--提供一种中间代理

    静态代理跟动态代理不一样,我们平常使用动态代理比较多,像一些需要频繁更换IP的项目都是找动态代理的,那么静态代理有什么用呢?

  • 11 2020-02
    动态ip与静态ip的分别

    IP地址是我们在上网是运营商分配给每一位客户端的数字标识,在你进行上网的时候IP地址是全球唯一的。接触过IP地址相关知识的人都知道,IP地址分为动态ip和静态ip两种,这两种不同的ip地址

  • 24 2019-05
    搭建一个爬虫代理IP池

    代理对于爬虫行业来讲,是很熟悉的,因为基本上没有爬虫代理大部分的数据都拿不到手,毕竟都不是自家开的平台,想要拿数据肯定是不可能的,总有各种的陷阱等着爬虫。而爬虫代理就是一

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部