# McWebCrawler **Repository Path**: cn-78ya/McWebCrawler ## Basic Information - **Project Name**: McWebCrawler - **Description**: 使用爬虫用于我的世界的服务器的web API - **Primary Language**: Python - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-18 - **Last Updated**: 2026-01-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # McWebCrawler McWebCrawler 是一个专门用于 Minecraft 服务器管理面板的网络爬虫工具,提供服务器状态监控、配置管理等功能。 ## 功能特性 - 🚀 自动登录服务器管理面板 - 📊 实时获取服务器状态(CPU、内存、玩家数量等) - ⚙️ 提取和管理服务器配置 - 🔒 安全的会话管理和验证 - 🛠️ 灵活的 API 交互 ## 安装 ### 安装依赖 ```bash pip install -r requirements.txt ``` ### 手动安装依赖 ```bash pip install requests beautifulsoup4 lxml ``` ## 快速开始 ### 基本使用 ```python from McWebCrawler.core import Core # 初始化爬虫 crawler = Core( account="your_username", password="your_password", url="server-panel-domain.com", ssl=True # 如果使用 HTTPS ) # 获取服务器数据 server_data = crawler.get_server_data(type="json") print(server_data) # 获取服务器配置 server_config = crawler.server_data.server_config print(server_config) # 获取会话信息 session_info = crawler.get_session_info() print(session_info) ``` ### 高级使用 #### 会话管理 ```python # 保存会话信息 session_info = crawler.get_session_info() # 可以将 session_info 保存到文件或数据库 # 恢复会话 from McWebCrawler.core import Core # 从保存的会话信息中恢复 restored_crawler = Core( account="your_username", password="your_password", url="server-panel-domain.com" ) restored_crawler._session(session_info) ``` ## 项目结构 ``` McWebCrawler/ ├── utils/ # 工具类 │ ├── __init__.py │ └── retry.py # 重试机制 ├── __init__.py # 包初始化 ├── classes.py # 类型定义 ├── core.py # 核心功能 ├── regex_utils.py # 文本处理工具 ├── LICENSE # 许可证 └── README.md # 项目文档 ``` ## 核心类和方法 ### Core 类 - `__init__()`: 初始化爬虫实例,执行登录 - `get_server_data()`: 获取服务器数据 - `get_session_info()`: 获取会话信息 - `_session()`: 会话管理 ### ServerData 类 - `process_server_info()`: 处理服务器信息数据 ## 配置说明 ### 登录参数 - `account`: 登录账号 - `password`: 登录密码 - `url`: 服务器面板域名 - `ssl`: 是否使用 HTTPS - `endpoint`: 登录路径,默认为 "index.php?r=site/login" ## 常见问题 ### 登录失败 - 检查账号密码是否正确 - 确认服务器面板地址是否可达 - 验证网络连接是否正常 ### 数据获取失败 - 检查服务器面板是否有访问限制 - 确认网络连接稳定 - 验证会话是否过期 ## 许可证 本项目使用 MIT 许可证,详见 [LICENSE](LICENSE) 文件。 ## 贡献 欢迎提交 Issue 和 Pull Request 来改进这个项目! ## 更新日志 ### v1.0.0 - 初始版本发布 - 实现基本的服务器面板登录和数据获取功能 - 添加会话管理和验证机制