您的位置:首页 > 新闻资讯 >文章内容
一个免费的异步爬虫代理池如何搭建?
来源:互联网 作者: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实际代理性能测试

实测效果

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

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

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


相关文章内容简介
推荐阅读
  • 23 2019-02
    爬虫伪装浏览器和设置代理的方法

    大部分的网站为了避免爬虫的恶意访问,会设置一些反爬虫机制,常见的反爬虫机制主要有:

  • 13 2020-04
    怎样选择代理ip软件

    一般我们都是遇到了需要大量换ip或者是长时间需要换ip才会用到换ip软件,因为很多换ip软件其实都是需要付费的。

  • 01 2019-11
    免费代理与付费代理,选哪个?

    有免费的代理IP,大家还会去选择付费的代理IP?虽然,现在可以很方便就通过网络找到免费的代理IP,但是这些IP的质量以及安全都非常不稳定。如果是追求更好的使用质量,我们来了解下普通付

  • 08 2020-04
    Http代理和SockS5代理的区别

    我们知道,代理IP按用途可以分为很多种,其中有两种最常用的就是Http代理和SockS5代理,今天我们来说说它们的区别。

  • 20 2019-08
    看看代理IP可以用在哪些方面

    代理IP根据隐秘性,有透明代理、普通匿名代理、高级匿名代理这几种划分,那么根据不同的代理IP,它们的应用场景有哪些方面呢?

  • 09 2019-05
    换国内代理IP地址找哪家好?

    换国内代理IP地址找哪家好?大家在换IP的时候,会想起使用哪家的IP资源呢?如果需要更换国内代理IP地址,哪家的质量不错?

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

大客户经理微信

微信公众号

微信公众号

回到顶部