免费好用的HTTP代理池发布,集成WEB管理界面

开源项目地址:believedotchenyu/ProxyPoolWithUI

项目Demo:http://chenyu0x00.com:8888/

2021年3月8日测试,项目运行半小时后,支持访问HTTPS的代理有40+,支持访问HTTP的代理有100+。

目前项目还在并不完善,欢迎通过评论区或者Issues和我们讨论。

注:知乎上的文章更新较慢,查看项目的最新情况请直接访问Github主页。

简易好用的免费代理池

兼容系统: Windows,Linux,macOS

定时自动爬取网络上的免费代理定时对代理进行验证,集成API随时返回可用代理不需要第三方数据库支持,一键启动,简单易用集成WEB管理界面,方便查看代理状态并对代理池进行配置拥有详细的注释,可以非常方便地学习或修改

WEB管理界面截图

查看目前代理的状态查看爬取器状态,可禁用或启用爬取器

已经集成的免费代理源

名称地址快代理https://www.kuaidaili.com/全网代理http://www.goubanjia.com/66代理http://www.66ip.cn/云代理http://www.ip3366.net/免费代理库https://ip.jiangxianli.com/小幻HTTP代理https://ip.ihuan.me/89免费代理https://www.89ip.cn/

后续会添加更多好用的代理源。

安装方法和使用方法请前往Github主页查看。

项目工作流程图

本项目主要包含三部分:

爬取进程:主要包括fetchers目录和proc/run_fetcher.py文件验证进程:主要在proc/run_validator.py文件中WEB与API:在api目录下

本项目的大致逻辑图如下:

注:为了便于理解与画图,下图的逻辑是经过简化之后的逻辑,详细过程可查看代码以及相应的注释。

工作流程图

验证算法相关

如何验证代理可用

目前验证代理可用的算法较为简单,核心思想是使用requests库访问一个指定网页,查看是否访问成功。

相关配置参数(包括超时时间,尝试次数等)可在config.py中找到,具体代码逻辑在proc/run_validator.py中。

什么时候该验证哪个代理

这个问题比较复杂,很难有一个完美的解决方案,因此目前的算法较为简单,勉强可用,可在db目录下找到对于目前算法的说明。

如果你有更好的算法,欢迎通过Issues和我们讨论,也可以根据db目录下的README文件对代码进行修改。