openclaw def06c6360 feat: 短信验证码登录 + v4 人机协作方案
核心改动:
- weidian_sso_login_v4.py: 全新人机协作登录方案
  - Playwright 打开页面 + 自动填手机号
  - 人拖滑块(唯一需要人做的事)
  - 脚本自动拦截 ticket → 发短信
  - 人输入验证码 → 自动提交 → 保存 auth
  - 反检测: 隐藏 webdriver 标记、模拟 iPhone 设备、逐字输入
  - 多 selector 兼容(微店不同版本 DOM 结构)
  - 自动截图 debug(失败时)

- auth_service.py: 重写,集成 v4 方案
  - login_with_password(): 密码登录(全自动)
  - login_with_sms(): 短信登录(人机协作)
  - 保存 Playwright storage_state + 精简 cookies JSON

- accounts.py 路由: 新增 /login_sms/<id> 接口
  - 密码登录和短信登录两条路径
  - 状态轮询支持新的交互状态

- accounts.html 模板:
  - 新增「短信登录」按钮
  - 确认弹窗提醒用户需要浏览器交互
2026-03-31 15:18:02 +08:00
2026-02-02 09:27:49 +08:00
2026-03-18 13:38:17 +08:00
2026-03-18 13:38:17 +08:00
2026-03-18 13:38:17 +08:00

微店抢购管理系统

基于 Playwright + Flask 的微店自动抢购工具,提供 Web 管理界面,支持多账号、购物车同步、定时抢购。

功能

  • 多账号管理 — 添加账号后台自动登录,状态实时轮询
  • 购物车同步 — 自动识别预售商品(倒计时 / 定时开售),一键创建抢购任务
  • 定时抢购 — 精确计时,到点自动刷新 → 点击购买 → 选 SKU → 提交订单,支持重试
  • 账号隔离 — 同账号任务顺序执行,不同账号并行,互不干扰
  • Web 面板 — 任务按账号分组,实时倒计时,一键启动 / 停止

快速开始

本地运行

pip install -r requirements.txt
playwright install chromium
python run.py

访问 http://localhost:9000

Docker 运行

docker compose up -d

数据持久化在 ./data 目录SQLite 数据库 + 登录态文件)。

项目结构

├── run.py                  # 启动入口
├── main.py                 # 独立抢购脚本(命令行模式)
├── config.yaml             # 命令行模式配置
├── server/
│   ├── app.py              # Flask 应用
│   ├── database.py         # SQLite 数据库
│   ├── routers/            # 路由accounts / tasks / orders
│   └── services/
│       ├── snatcher.py     # 抢购核心逻辑
│       ├── cart_service.py # 购物车预售商品抓取
│       ├── scheduler.py    # 任务调度(按账号隔离)
│       └── auth_service.py # 登录态管理
├── templates/              # Jinja2 页面模板
├── utils/                  # 工具stealth / timer / auth
├── Dockerfile
└── docker-compose.yml

注意事项

  • 抢购成功率受网络延迟、库存、平台风控等因素影响,本工具仅辅助操作
  • SKU 选择器的 CSS 类名基于当前微店 H5 页面结构,如页面改版可能需要调整
  • Docker 容器内以 headless 模式运行 Chromium
Description
No description provided
Readme 154 KiB
Languages
Python 76.6%
HTML 23.1%
Dockerfile 0.3%