231 lines
6.1 KiB
Markdown
231 lines
6.1 KiB
Markdown
# 网站流量模拟脚本
|
||
|
||
⚠️ **重要声明**:此脚本仅用于测试自己的网站,请确保遵守网站服务条款和当地法律法规。
|
||
|
||
## 功能特点
|
||
|
||
- 🌐 支持代理访问
|
||
- 🎯 模拟从GitHub跳转访问
|
||
- 🎮 专门针对2048游戏页面优化
|
||
- 🤖 模拟真实用户行为(滚动、点击、键盘操作)
|
||
- 📊 详细的日志记录
|
||
- ⚙️ 灵活的配置选项
|
||
- 🚀 **新增:纯协议版本,无需浏览器窗口**
|
||
- 🌍 **新增:自动显示当前IP地址**
|
||
|
||
## 文件说明
|
||
|
||
| 文件名 | 描述 |
|
||
|--------|------|
|
||
| `website_traffic_bot.py` | 基础版本,代理配置硬编码在脚本中 |
|
||
| `website_traffic_bot_config.py` | 配置文件版本,通过config.json配置 |
|
||
| `website_traffic_bot_protocol.py` | **推荐** 纯协议版本,不打开浏览器 |
|
||
| `check_ip.py` | **新增** IP地址检查工具 |
|
||
| `config.json` | 配置文件,包含代理、目标网站等设置 |
|
||
| `requirements.txt` | 完整版Python依赖包列表 |
|
||
| `requirements_protocol.txt` | 纯协议版依赖包列表(仅需requests) |
|
||
| `setup_and_run.bat` | Windows自动安装和运行工具 |
|
||
|
||
## 版本对比
|
||
|
||
| 特性 | 基础版 | 配置版 | 纯协议版 ⭐ |
|
||
|------|--------|--------|------------|
|
||
| 需要Chrome浏览器 | ✅ | ✅ | ❌ |
|
||
| 打开浏览器窗口 | ✅ | ✅ | ❌ |
|
||
| 资源消耗 | 高 | 高 | 低 |
|
||
| 运行速度 | 慢 | 慢 | 快 |
|
||
| 隐蔽性 | 低 | 低 | 高 |
|
||
| 配置文件支持 | ❌ | ✅ | ✅ |
|
||
| 登录检测 | ❌ | ❌ | ✅ |
|
||
| IP地址显示 | ✅ | ✅ | ✅ |
|
||
|
||
## 快速开始
|
||
|
||
### Windows用户(推荐)
|
||
|
||
1. 下载所有文件到同一文件夹
|
||
2. 双击运行 `setup_and_run.bat`
|
||
3. 选择 **选项3:纯协议版本(推荐)**
|
||
4. 或选择 **选项4:IP地址检查工具** 检查代理
|
||
|
||
### 手动安装
|
||
|
||
#### 纯协议版本(推荐)
|
||
```bash
|
||
# 仅需安装requests
|
||
pip install -r requirements_protocol.txt
|
||
|
||
# 运行纯协议版本
|
||
python website_traffic_bot_protocol.py
|
||
```
|
||
|
||
#### IP地址检查工具
|
||
```bash
|
||
# 安装requests
|
||
pip install requests
|
||
|
||
# 检查当前IP地址
|
||
python check_ip.py
|
||
```
|
||
|
||
#### 完整版本
|
||
```bash
|
||
# 安装完整依赖(包括selenium)
|
||
pip install -r requirements.txt
|
||
|
||
# 运行基础版本
|
||
python website_traffic_bot.py
|
||
|
||
# 或运行配置文件版本
|
||
python website_traffic_bot_config.py
|
||
```
|
||
|
||
## IP地址检查功能 🆕
|
||
|
||
### 自动IP显示
|
||
所有版本的脚本都会在启动时自动显示当前IP地址:
|
||
|
||
```
|
||
🌍 当前IP地址: 123.456.789.0
|
||
🌐 代理服务器: your-proxy-host:port
|
||
```
|
||
|
||
### 独立IP检查工具
|
||
使用 `check_ip.py` 可以随时检查:
|
||
|
||
- ✅ 当前使用的IP地址
|
||
- ✅ 代理是否正常工作
|
||
- ✅ 本地IP与代理IP对比
|
||
- ✅ 多个IP查询服务验证
|
||
|
||
**运行示例:**
|
||
```bash
|
||
python check_ip.py
|
||
```
|
||
|
||
**输出示例:**
|
||
```
|
||
🌍 IP地址检查工具
|
||
==================================================
|
||
发现代理配置,正在检查代理IP...
|
||
🌐 使用代理: proxy-host:port
|
||
✅ httpbin.org: 123.456.789.0
|
||
✅ ipify.org: 123.456.789.0
|
||
|
||
为了对比,检查本地IP...
|
||
🌐 不使用代理
|
||
✅ httpbin.org: 192.168.1.100
|
||
✅ ipify.org: 192.168.1.100
|
||
|
||
📊 结果对比
|
||
==================================================
|
||
✅ 代理工作正常!IP地址已更改
|
||
代理IP: 123.456.789.0
|
||
本地IP: 192.168.1.100
|
||
```
|
||
|
||
## 配置说明
|
||
|
||
### config.json 配置项
|
||
|
||
```json
|
||
{
|
||
"proxy": {
|
||
"host": "代理服务器地址",
|
||
"port": "代理端口",
|
||
"username": "代理用户名",
|
||
"password": "代理密码"
|
||
},
|
||
"targets": {
|
||
"main_site": "主网站地址",
|
||
"game_page": "游戏页面地址"
|
||
},
|
||
"settings": {
|
||
"default_visits": 10,
|
||
"min_delay": 60,
|
||
"max_delay": 300,
|
||
"main_site_stay_time": [5, 20],
|
||
"game_page_stay_time": [30, 120]
|
||
}
|
||
}
|
||
```
|
||
|
||
## 运行模式
|
||
|
||
### 1. 单次访问测试
|
||
- 执行一次完整的访问流程
|
||
- 用于测试配置是否正确
|
||
|
||
### 2. 连续访问模式
|
||
- 执行多次访问,每次访问间有随机延迟
|
||
- 可自定义访问次数和延迟范围
|
||
|
||
### 3. IP地址检查
|
||
- 快速检查当前IP和代理状态
|
||
- 对比本地IP与代理IP
|
||
|
||
## 访问流程
|
||
|
||
1. 📍 **显示当前IP** - 验证代理设置
|
||
2. 📍 **模拟GitHub访问** - 设置referrer头,模拟从GitHub跳转
|
||
3. 🏠 **访问主网站** - 访问首页,模拟用户浏览行为
|
||
4. 🎮 **访问游戏页面** - 访问2048游戏,模拟游戏操作
|
||
|
||
## 日志文件
|
||
|
||
脚本运行时会生成 `traffic_bot.log` 日志文件,记录详细的执行信息,包括:
|
||
|
||
- ✅ 当前使用的IP地址
|
||
- ✅ 代理服务器信息
|
||
- ✅ 每次访问的详细记录
|
||
- ✅ 错误和警告信息
|
||
|
||
## 注意事项
|
||
|
||
1. **合法使用**:仅用于测试自己的网站
|
||
2. **代理设置**:确保代理配置正确且有效
|
||
3. **IP验证**:使用IP检查工具验证代理是否正常工作
|
||
4. **登录要求**:如果网站需要登录,纯协议版本会自动检测并提示
|
||
5. **网络环境**:确保网络连接稳定
|
||
6. **适度使用**:避免对服务器造成过大负担
|
||
|
||
## 故障排除
|
||
|
||
### 常见问题
|
||
|
||
1. **WebDriver失败**(仅影响完整版本)
|
||
- 确保Chrome浏览器已安装
|
||
- 检查网络连接
|
||
|
||
2. **代理连接失败**
|
||
- 检查代理配置是否正确
|
||
- 使用 `check_ip.py` 验证代理连接
|
||
- 确认代理服务器可用
|
||
|
||
3. **网站访问失败**
|
||
- 检查目标网站是否可访问
|
||
- 确认网络连接稳定
|
||
|
||
4. **检测到登录页面**
|
||
- 检查网站是否需要登录
|
||
- 考虑使用公开访问的页面
|
||
- 或在配置中添加登录功能
|
||
|
||
5. **IP地址显示问题**
|
||
- 使用独立的 `check_ip.py` 工具检查
|
||
- 检查网络连接和代理设置
|
||
|
||
### 版本选择建议
|
||
|
||
- **首次使用**:推荐纯协议版本 `website_traffic_bot_protocol.py`
|
||
- **代理测试**:使用 `check_ip.py` 验证代理设置
|
||
- **需要复杂交互**:使用完整版本
|
||
- **长期运行**:强烈推荐纯协议版本(资源消耗低)
|
||
|
||
### 获取帮助
|
||
|
||
如遇到问题,请检查 `traffic_bot.log` 日志文件中的错误信息。
|
||
|
||
---
|
||
|
||
**免责声明**:使用此脚本的风险由用户自行承担。请确保在使用前了解相关法律法规和网站服务条款。 |