重构代理池系统:简化架构并增强核心功能

后端变更:
- 移除 tasks_manager.py 和 core/auth.py,简化架构
- 新增 core/scheduler.py 验证调度器,替代原有任务管理
- 大幅优化 api_server.py:统一错误处理、增强参数验证、支持调度器控制
- validator.py 增强 SOCKS4/SOCKS5 代理验证支持
- config.py 清理废弃配置(WebSocket、API Key、认证开关)
- SQLite 数据库操作性能优化

前端变更:
- 移除任务管理页面 (CrawlerTasks) 和 WebSocket 相关代码
- 路由简化为 4 个核心页面:总览、代理列表、插件管理、设置
- 提取前端工具函数(clipboard、confirm、format)和 API 类型定义
- 优化 CSS 架构:完善 variables、utilities、element-plus 样式
- Dashboard、Plugins、ProxyList、Settings 页面 UI/UX 优化
- App.vue 响应式侧边栏和页面过渡动画优化

其他:
- 移除 PowerShell 启动脚本,简化 Windows 批处理脚本
- 新增 README_SOCKS.md SOCKS 代理支持文档
- .env.example 和 .gitignore 更新
This commit is contained in:
祀梦
2026-04-02 11:23:23 +08:00
parent b5932a95b2
commit a79f78b338
47 changed files with 3748 additions and 3190 deletions

View File

@@ -12,7 +12,9 @@ class ProxyListDownloadPlugin(BasePlugin):
self.name = "ProxyListDownload"
self.urls = [
"https://www.proxy-list.download/api/v1/get?type=http",
"https://www.proxy-list.download/api/v1/get?type=https"
"https://www.proxy-list.download/api/v1/get?type=https",
"https://www.proxy-list.download/api/v1/get?type=socks4",
"https://www.proxy-list.download/api/v1/get?type=socks5"
]
async def parse(self, html):
@@ -24,6 +26,16 @@ class ProxyListDownloadPlugin(BasePlugin):
lines = html.split('\n')
count = 0
# 根据 URL 判断协议类型
if 'type=socks4' in self.current_url:
protocol = 'socks4'
elif 'type=socks5' in self.current_url:
protocol = 'socks5'
elif 'type=https' in self.current_url:
protocol = 'https'
else:
protocol = 'http'
for line in lines:
line = line.strip()
if not line:
@@ -34,7 +46,6 @@ class ProxyListDownloadPlugin(BasePlugin):
if len(parts) >= 2:
ip = parts[0]
port = parts[1]
protocol = 'http' if 'type=http' in self.current_url else 'https'
yield ip, int(port), protocol
count += 1