| .. | ||
| config | ||
| core | ||
| data | ||
| services | ||
| test | ||
| tools | ||
| utils | ||
| main.py | ||
| README.md | ||
| requirements.txt | ||
| test_new_api.py | ||
| test_report_server.py | ||
| 使用指南_新接口.md | ||
| 如何破解验签.md | ||
| 守护进程使用说明.md | ||
| 差异.md | ||
| 快速参考.md | ||
| 数据上报配置说明.md | ||
| 数据格式转换说明.md | ||
| 达人账号抓取说明.md | ||
| 逆向分析指南.md | ||
| 项目改造说明.md | ||
字节跳动直播服务平台 Cookie 登录工具
半自动化登录工具,用于管理字节跳动直播服务平台的 Cookie。
功能特性
- ✅ 半自动化登录流程(用户手动完成登录,系统自动保存 Cookie)
- ✅ Cookie 自动保存和加载
- ✅ 登录成功自动检测(通过 URL 判断)
- ✅ 用户信息自动提取
- ✅ 清晰的命令行提示
环境要求
- Python 3.8.6+
- Windows/Linux/macOS
安装步骤
1. 安装依赖
pip install -r requirements.txt
2. 安装 Playwright 浏览器
playwright install chromium
使用方法
登录流程
python main.py login
执行后会:
- 自动打开浏览器(最大化窗口)
- 导航到登录页面
- 等待你手动完成登录(输入账号密码、完成验证码等)
- 自动检测登录成功
- 自动保存 Cookie 到
./data/cookies.json
查看 Cookie 状态
python main.py status
查看当前保存的 Cookie 信息,包括:
- Cookie 文件路径
- Cookie 数量
- 用户名
- 创建时间
- 最后验证时间
项目结构
crawler/
├── config/ # 配置文件
│ ├── __init__.py
│ └── settings.py # 系统配置
├── core/ # 核心模块
│ ├── __init__.py
│ ├── cookie_manager.py # Cookie管理器
│ └── browser_login.py # 浏览器登录
├── utils/ # 工具模块
│ ├── __init__.py
│ └── logger.py # 日志工具
├── data/ # 数据目录
│ └── cookies.json # Cookie文件(自动创建)
├── logs/ # 日志目录
│ └── crawler.log # 日志文件
├── main.py # 主程序入口
└── requirements.txt # 依赖列表
配置说明
配置文件位于 config/settings.py,可以修改:
LOGIN_URL: 登录页面 URLBROWSER_TIMEOUT: 登录超时时间(秒,默认300秒)COOKIE_FILE: Cookie 保存路径LOG_LEVEL: 日志级别
注意事项
- 登录超时时间默认为 5 分钟,如需修改请编辑
config/settings.py - Cookie 文件保存在
./data/cookies.json,请妥善保管 - 日志文件保存在
./logs/crawler.log
故障排除
浏览器启动失败
确保已安装 Playwright 浏览器:
playwright install chromium
登录检测失败
如果登录后系统未检测到登录成功,请检查:
- URL 是否包含
portal/data/leaderboard - 页面是否已加载完成
- 是否在超时时间内完成登录
📤 数据上报功能
系统支持自动将抓取的数据上报到您的服务器。
配置上报
编辑 config/settings.py:
# 启用数据上报
REPORT_URL = "http://your-server.com/api/Streamers/ReportStreamerData?category=commerce&logId={logId}"
REPORT_TIMEOUT = 60
REPORT_MAX_RETRIES = 3
# 禁用数据上报
REPORT_URL = None
测试上报功能
提供了测试服务器,方便您测试上报功能:
# 1. 启动测试服务器
python test_report_server.py
# 2. 在另一个终端运行爬虫
python main.py fetch-daren
# 3. 查看测试服务器输出,确认数据是否成功上报
详见:数据上报配置说明.md
API验签参数逆向分析
如果您需要分析API接口的验签参数(如 a_bogus、msToken、verifyFp 等),请查看:
- 📖 逆向分析指南.md - 详细的逆向分析教程
- 🛠️ tools/ - 逆向分析工具集
capture_params.py- Python参数捕获工具browser_hook.js- 浏览器Hook脚本README.md- 工具使用说明
快速开始逆向分析
# 使用Python工具捕获API参数
python tools/capture_params.py
# 或在浏览器Console中运行Hook脚本
# 复制 tools/browser_hook.js 的内容到Console
许可证
内部使用
账号密码
1.网址和账号 网址:https://union.bytedance.com/open/ 18969047040 YC778899
🎯 主要功能
1. 单次抓取
# 抓取达人账号数据(单次)
python main.py fetch-daren
# 自定义每页数量
python main.py fetch-daren --page-size 50
详见:达人账号抓取说明.md
2. 守护进程(定时抓取)
# 使用默认配置(每1小时抓取一次)
python main.py daemon
# 自定义抓取间隔(每2小时)
python main.py daemon --interval 2
# 自定义每页数量
python main.py daemon --interval 1 --page-size 50
详见:守护进程使用说明.md
守护进程特性:
- ✅ 定时自动抓取达人账号数据
- ✅ 自动保存到本地
data/all_account/ - ✅ 自动上报数据到服务器(如已配置)
- ✅ 连续失败容错机制
- ✅ 资源自动清理,避免内存泄漏
- ✅ 详细的日志记录
- ⚠️ Cookie失效时提示重新登录
3. 数据格式转换
抓取的数据会自动转换为指定格式:
详见:数据格式转换说明.md
4. 数据上报
抓取完成后自动上报到服务器:
详见:数据上报配置说明.md