MCPcopy Index your code
hub / github.com/Sage520/Shark-Proxy-Pool

github.com/Sage520/Shark-Proxy-Pool @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
998 symbols 3,197 edges 76 files 146 documented · 15%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Shark-Proxy-Pool


警告

本站免费代理IP均收集自互联网,本站不对免费代理的有效性负责,请合法使用免费代理,由用户使用免费代理IP带来的法律责任与本站无关。

项目架构

  • Shark-Proxy-Platform
    • 平台 | Java | 用于总体调度,接口开放调用
  • Shark-Proxy-Check
    • 校验 | Golang | 用于校验代理有效性,可用性
  • Shark-Proxy-Spider
    • 爬虫 | Python | 用于开放免费代理抓取

更新日志

  • 2025.5.22 - 去除首页列表接口条数限制
  • 2024.11.29 - 增加代理是否支持HTTPS请求,POST请求能力检测
  • 2024.11.29 - 爬虫程序MQ增加心跳,自动重连逻辑
  • 2024.5.18 - 优化爬虫抓取逻辑,增加通用配置
  • 2024.5.18 - 增加点击表格复制IP信息功能
  • 2023.6.5 - 网页增加国际化支持(简体中文,English)
  • 2023.5.27 - 增加代理存活率
  • 2023.4.27 - API支持txt格式返回

快速开始

1. 安装 Docker 和 Docker Compose

确保你的系统已经安装了 Docker 和 Docker Compose。你可以按照 Docker 官方文档的指引进行安装:https://docs.docker.com/get-docker/

2. 克隆项目代码

使用以下命令克隆项目代码到本地:

git clone https://github.com/Sage520/Shark-Proxy-Pool

3. 启动容器

在项目根目录下执行以下命令,使用 Docker Compose 构建和启动容器:

cd compose
docker-compose up -d

该命令会自动下载并构建项目所需的 Docker 镜像,并在后台启动容器。

4. 访问应用程序

一旦容器启动成功,你可以通过浏览器访问应用程序。在浏览器中输入以下地址:

http://localhost:80

接口文档

  • URL: https://proxy.010438.xyz/api/get
  • 请求方式: get
  • 请求参数
参数名 数据类型 必传 说明 示例
port string false 端口号 8080, 80
type int false 代理协议类型 (1 = http 2 = https 3 = socks4 4 = socks5) 1, 2, 3, 4
anonymous int false 匿名类型 (1 = 透明 2 = 普匿 3 = 高匿) 1, 2, 3
supportHttps int false 是否支持HTTPS请求 (0 = 不支持 1 = 支持) 0, 1
supportPost int false 是否支持POST请求 (0 = 不支持 1 = 支持) 0, 1
country string false 国家 中国, 美国, 外国 (除中国之外所有国家)
province string false 省(只有中国地区数据才有此字段) 江苏省, 浙江省
respType string false 接口响应格式(默认json) json, txt
  • 响应数据
{
    "msg": "success",
    "code": 200,
    "data": {
        "ip": "58.246.58.150",
        "port": "9002",
        "type": "http",
        "status": 1,
        "country": "中国",
        "province": "上海",
        "respTime": "2.459",
        "lastCheckTime": 1732789497531,
        "anonymous": 3,
        "supportHttps": 0,
        "supportPost": 1
    }
}
183.89.115.39:80

爬虫源增加

符合 IP:端口 格式的数据

直接修改爬虫的config.py文件,在里面新增一条记录即可
url = 网址
type = 类型(1 = http 2 = https 3 = socks4 4 = socks5)
source = 来源备注 image

不符合 IP:端口 格式的数据,自定义代码逻辑

  1. 修改 Shark-Proxy-Spider/fetcher/fetcher.py 复制现有函数为一个新的,入参出差保持一定,自己实现爬虫逻辑即可 image

  2. 修改爬虫的config.py文件,增加新自定义函数的cron规则 name = 函数名 cron = cron表达式 image

项目赞助

wechat

访问频率限制

接口限制并发 1秒 / 5次,多次触流控会进入黑名单!

参考项目

特别感谢

Stargazers over time

Stargazers over time

Extension points exported contracts — how you extend this code

FetchLogService (Interface)
抓取日志服务 @author sage @date 2023/05/13 [4 implementers]
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/service/FetchLogService.java
ProxyService (Interface)
代理服务 @author Sage @date 2023/02/02 [2 implementers]
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/service/ProxyService.java
FetchLogRepository (Interface)
抓取日志库 @author sage @date 2023/05/13
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/repository/FetchLogRepository.java
ProxyRepository (Interface)
代理库 @author Sage @date 2023/02/02
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/repository/ProxyRepository.java

Core symbols most depended-on inside this repo

n
called by 953
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
e
called by 196
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
r
called by 182
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
t
called by 125
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
i
called by 115
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
filter
called by 56
Shark-Proxy-Spider/util/log_util.py
Lo
called by 51
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js
kr
called by 50
Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js

Shape

Function 782
Method 150
Class 51
Struct 6
Enum 5
Interface 4

Languages

TypeScript77%
Java17%
Python4%
Go2%

Modules by API surface

Shark-Proxy-Platform/src/main/resources/static/modules/element-ui/2.15.13/index.js427 symbols
Shark-Proxy-Platform/src/main/resources/static/modules/vue/2.6.10/vue.min.js247 symbols
Shark-Proxy-Platform/src/main/resources/static/modules/vue-i18n/8.28.2/vue-i18n.js51 symbols
Shark-Proxy-Platform/src/main/resources/static/modules/axios/1.3.4/axios.min.js41 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/common/enums/ProxyEnum.java25 symbols
Shark-Proxy-Spider/mq/basic.py17 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/framework/config/RabbitConfig.java15 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/service/impl/ProxyServiceImpl.java11 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/project/service/ProxyService.java10 symbols
Shark-Proxy-Spider/util/web_request.py8 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/common/web/AjaxResult.java7 symbols
Shark-Proxy-Platform/src/main/java/run/sage/shark/common/exception/base/BaseException.java7 symbols

For agents

$ claude mcp add Shark-Proxy-Pool \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact