Files
ai_wht_wechat/backend/XHS_CLI_README.md
2025-12-19 22:36:48 +08:00

2.3 KiB

小红书登录 CLI 工具

概述

这是一个可以被 Go 服务直接调用的 Python CLI 工具,用于小红书登录功能。 使用此工具后,不再需要单独启动 Python Web 服务。

使用方式

1. 发送验证码

python xhs_cli.py send_code <手机号> [国家区号]

示例:

python xhs_cli.py send_code 13800138000 +86

返回 JSON 格式:

{
  "success": true,
  "message": "验证码发送成功"
}

2. 登录

python xhs_cli.py login <手机号> <验证码> [国家区号]

示例:

python xhs_cli.py login 13800138000 123456 +86

返回 JSON 格式:

{
  "success": true,
  "user_info": {...},
  "cookies": {...},
  "url": "https://www.xiaohongshu.com/"
}
python xhs_cli.py inject_cookies '<cookies_json>'

示例:

python xhs_cli.py inject_cookies '[{"name":"web_session","value":"xxx","domain":".xiaohongshu.com"}]'

返回 JSON 格式:

{
  "success": true,
  "logged_in": true,
  "cookies": {...},
  "user_info": {...}
}

Go 服务集成

Go 服务已经修改为直接调用 Python CLI 脚本,无需启动 Python Web 服务。

修改的文件

  1. backend/xhs_cli.py (新增)

    • 命令行接口工具
  2. go_backend/service/xhs_service.go (修改)

    • 使用 exec.Command 调用 Python 脚本
    • 不再通过 HTTP 调用 Python 服务
  3. go_backend/service/employee_service.go (修改)

    • 使用 exec.Command 调用 Python 脚本

优点

  • 只需启动一个 Go 服务
  • 部署更简单,不需要管理多个服务进程
  • 减少网络开销
  • 更容易调试和维护

依赖要求

确保已安装 Python 依赖:

cd backend
pip install -r requirements.txt

主要依赖:

  • playwright
  • asyncio

注意事项

  1. Python 命令需要在系统 PATH 中可用
  2. 确保 xhs_login.pyxhs_cli.py 在同一目录
  3. Go 服务会在相对路径 ../backend 下查找 Python 脚本
  4. 所有输出均为 JSON 格式,便于 Go 服务解析

错误处理

如果执行失败,会返回包含错误信息的 JSON:

{
  "success": false,
  "error": "错误描述信息"
}

Go 服务会捕获 stderr 输出并作为错误信息的一部分返回。