Unified CLI and agent skills for XHS, Weibo, and DouYin APIs.
Project description
把三个平台的 API 仓库合并成一条命令行和一个 Agent Skill。 CLI 是稳定执行层,Agent 只需 shell 调用
aione并解析 JSON,无需直接引入上游代码。
为什么需要这个项目?
小红书 API (Spider_XHS) ─┐
微博 API (WeiboApis) ─┤──► aione CLI ──► 你的 AI Agent / 脚本 / 工作流
抖音 API (DouYin_Spider)─┘ │
├─ 统一认证 (cookie save/status/clear)
├─ 统一输出 (json / pretty / file)
├─ 统一代理 & 超时
└─ 统一错误分类
三个仓库各自有不同的调用方式、签名算法、参数风格。All-IN-ONE 做的事情:
- 自动发现 — AST 解析上游源码,零配置注册全部公开接口
- 统一命名 —
aione <平台> <资源> <动作>取代零散的函数调用 - Cookie 管理 — 支持多 profile(PC / 创作者 / 蒲公英 / 千帆 / 直播),优先级:
--cookies> 环境变量 > 本地存储 - Agent 就绪 — 所有命令默认输出 JSON,Agent 直接 shell 调用 + 解析
⭐ 已覆盖功能
| 平台 | 模块 | 命令数 | 说明 |
|---|---|---|---|
| 小红书 | PC 端 | 32 | 首页推荐、搜索笔记/用户、笔记详情、评论、消息、无水印下载 |
| 创作者平台 | 11 | 上传媒体、发布笔记、查看已发布作品 | |
| PC 登录 | 11 | 二维码登录、手机验证码登录 | |
| 创作者登录 | 12 | 二维码登录、手机验证码登录、会话检查 | |
| 蒲公英 | 11 | KOL 博主列表、粉丝画像、合作邀请 | |
| 千帆 | 9 | 分销商列表、合作品类、店铺/商品数据 | |
| 微博 | Web 端 | 7 | 用户信息、微博搜索、评论、用户全部微博 |
| 创作者 | 6 | 图片/视频上传、发布微博 | |
| Mobile | 2 | 移动端搜索、作品详情 | |
| 抖音 | 用户/作品 | 45 | 用户信息、视频详情、搜索、评论、粉丝/关注列表、收藏、私信、直播、推荐流 |
| 合计 | 146 |
🛠️ 快速开始
环境要求
- Python 3.9+
- Node.js 16+(XHS 和抖音的签名算法需要)
- Git
安装
方式一:从 PyPI 安装(推荐)
pip install all-in-one-aione
aione setup
方式二:从源码安装
git clone https://github.com/cv-cat/All-IN-ONE.git
cd All-IN-ONE
pip install -e .
aione setup
aione setup 会自动完成:
git clone --depth 1三个上游仓库- 检测
package.json并执行npm install(XHS 需要crypto-js,抖音需要jsrsasign)
配置 Cookie
浏览器登录对应平台后,F12 → Application → Cookies,复制完整 cookie 字符串:
aione auth xhs set-cookie --cookie "<你的小红书cookie>"
aione auth weibo set-cookie --cookie "<你的微博cookie>"
aione auth douyin set-cookie --cookie "<你的抖音cookie>"
验证:
aione auth xhs status
aione auth weibo status
aione auth douyin status
Cookie 存储在本地用户目录,文件权限 600,CLI 输出和日志永远不会泄露 cookie 值。
运行
aione --help
aione xhs note search --query "咖啡" --page 1 --output json
aione weibo post search --query "AI" --page 1 --output json
aione douyin work info --url "https://www.douyin.com/video/..." --output json
🚀 CLI 使用示例
搜索
# 小红书搜索笔记
aione xhs note search --query "咖啡" --page 1 --output json
# 小红书批量搜索(自动翻页)
aione xhs note search-some --query "咖啡" --require-num 50 --output json
# 微博搜索
aione weibo post search --query "AI" --page 1 --output json
# 抖音搜索视频
aione douyin work search-some-general --query "美食" --num 20 --output json
内容详情
aione xhs note info --url "<笔记链接>" --output json
aione weibo work info --url "<微博链接>" --output json
aione douyin work info --url "https://www.douyin.com/video/..." --output json
用户信息
aione xhs user self-info --output json
aione weibo info self --output json
aione douyin uid self --output json
评论
aione xhs note all-comment --url "<笔记链接>" --output json
aione douyin work all-comment --url "<视频链接>" --output json
创作者发布
# 小红书发布笔记
aione xhs media upload --path-or-file "./image.jpg" --media-type image --output json
aione xhs creator post-note --note-info '{"title":"...","desc":"..."}' --output json
# 微博发布
aione weibo weibo post --note-info '{"content":"..."}' --output json
Dry-run 模式
不调用 API,仅验证命令映射:
aione douyin work info --dry-run --url "https://www.douyin.com/video/example"
Verbose 模式
调试信息输出到 stderr,不泄露 cookie:
aione xhs user self-info --verbose --output json
🧩 Agent Skill
项目提供一个统一的 Agent Skill,可被 Claude Code、Codex 等工具直接引入:
skills/
all-in-one/
SKILL.md # Skill 入口
references/
auth.md # 认证:cookie 优先级、多 profile、环境变量
xhs.md # 小红书:86 条命令参考
weibo.md # 微博:15 条命令参考
douyin.md # 抖音:45 条命令参考
workflows.md # 跨平台工作流:搜索、详情、发布、直播
Skill 调用 CLI 并解析 JSON 输出,不直接导入上游代码。Agent 只需要知道 aione 命令即可操作三个平台。
🔐 认证体系
Cookie 优先级
--cookies "<cookie>"— 命令行直接传入(最高优先级)- 环境变量 —
AIONE_XHS_COOKIES、AIONE_WEIBO_COOKIES、AIONE_DOUYIN_COOKIES - 本地存储 —
aione auth <平台> set-cookie保存的 cookie
多 Profile 支持
不同模块使用不同的 cookie(自动匹配):
| 平台 | Profile | 对应模块 |
|---|---|---|
| XHS | pc |
PC 端浏览/搜索/评论 |
| XHS | creator |
创作者平台发布 |
| XHS | pugongying |
蒲公英 KOL 数据 |
| XHS | qianfan |
千帆分销商数据 |
| 微博 | web |
Web 端 |
| 微博 | creator |
创作者 |
| 微博 | mobile |
移动端 |
| 抖音 | web |
PC 端 |
| 抖音 | live |
直播相关 |
aione auth xhs set-cookie --profile pc --cookie "<PC端cookie>"
aione auth xhs set-cookie --profile creator --cookie "<创作者cookie>"
aione auth douyin set-cookie --profile live --cookie "<直播cookie>"
📁 项目结构
All-IN-ONE/
├── all_in_one/
│ ├── cli/
│ │ ├── main.py # CLI 入口、argparse 路由、setup 命令
│ │ ├── auth.py # Cookie 存储 / 读取 / 清除 / 优先级解析
│ │ ├── errors.py # 错误分类(AUTH_MISSING / UPSTREAM_ERROR / ...)
│ │ └── output.py # 输出格式化(json / pretty / file)
│ └── platforms/
│ ├── discovery.py # AST 解析上游源码,自动发现全部公开接口
│ ├── registry.py # 命令注册表,碰撞解决
│ ├── invoke.py # 动态加载上游模块并调用
│ ├── xhs/mapping.py # 小红书命令 → 上游函数映射
│ ├── weibo/mapping.py # 微博命令 → 上游函数映射
│ └── douyin/mapping.py # 抖音命令 → 上游函数映射
├── aione/
│ ├── __init__.py
│ └── __main__.py # python -m aione 入口
├── skills/
│ └── all-in-one/ # 统一 Agent Skill
├── tests/ # 43 个测试(含 cookie 门控集成测试)
├── main.py # python main.py 入口
├── pyproject.toml # 包配置 & 依赖
└── requirements.txt # 依赖镜像
🧪 测试
# 运行全部单元测试
python -m pytest tests/ -v
# 仅运行真实接口测试(需要 cookie)
AIONE_XHS_COOKIES="<cookie>" AIONE_WEIBO_COOKIES="<cookie>" AIONE_DOUYIN_COOKIES="<cookie>" \
python -m pytest tests/ -m integration -v
🗝️ 注意事项
- Cookie 有时效性,失效后需重新获取并执行
aione auth <平台> set-cookie - 建议配合代理使用:
--proxy http://127.0.0.1:7890 - 创作者/发布类接口请谨慎使用,注意平台规则
upstreams/目录通过aione setup管理,不纳入版本控制- 更新上游仓库:进入对应目录
git pull,或删除后重新aione setup
🧸 额外说明
- 感谢 Star ⭐ 和 Follow,项目会持续更新
- 作者联系方式在主页,有问题随时联系
- 欢迎 PR 和 Issue,也欢迎关注作者其他项目
- 如果此项目对您有帮助,欢迎请作者喝一杯奶茶 ~~(开心一整天 😊)
📈 Star 趋势
🍔 交流群
如果你对爬虫和 AI Agent 感兴趣,请加作者主页 wx 通过邀请加入群聊
ps: 请加群13、14,人满或者过期 issue | wx 提醒
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file all_in_one_aione-0.1.1.tar.gz.
File metadata
- Download URL: all_in_one_aione-0.1.1.tar.gz
- Upload date:
- Size: 30.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ddac75de384ca59cd8d7712dd6bb0d35e4363a1127039043a98ccee05ff40507
|
|
| MD5 |
bf3fce4f1ba118e69c8acb354327461e
|
|
| BLAKE2b-256 |
6dcac619a4f257ae5bb5f9855619863e894f79fb5ffa5db0815ac45de7661aca
|
File details
Details for the file all_in_one_aione-0.1.1-py3-none-any.whl.
File metadata
- Download URL: all_in_one_aione-0.1.1-py3-none-any.whl
- Upload date:
- Size: 22.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a89f0a370734934aa0c7b1b62de3765d57ab5652e6ae9fe68df62a72a39e8d6a
|
|
| MD5 |
be867d675735a7c4b64791ea3667fd49
|
|
| BLAKE2b-256 |
39e55dfcb15f2b007a5c412c00bfc1f3af260c270d6ca4c647a787d30170f596
|