Files
catbus/README.ja.md

13 KiB
Raw Permalink Blame History

catbus — ご乗車ください、行き先はあらゆるプラットフォーム

ひとつのコマンドで、10 のプラットフォームへ。
小紅書(RED) · 抖音 · TikTok · ビリビリ · 快手 · 微博 · 閑魚 · タオバオ · 京東 · X
まもなく対応:Instagram · YouTube · Facebook · 知乎 · WeChat 公式アカウント · 今日頭条 · 得物 · 拼多多 · 美団 · 大衆点評


npm License: MIT Node TypeScript Platforms Agent Ready

简体中文 · English · 繁體中文 · 日本語 · 한국어

クイックスタート · 機能マトリクス · プラットフォーム別 · サンプル · エージェント向け


プラットフォームごとに、API も署名方式も、ログイン方法もデータ形式もバラバラ。catbus はそれらをまとめて 1 台のバスに乗せます。同じコマンド、同じ JSON、同じログイン情報ディレクトリ。プラットフォームを乗り換えるときは、単語をひとつ変えるだけです。

✨ catbus とは

catbus(猫巴士)は、中国内外の主要 10 プラットフォームの web エンドポイントを統一された構文で操作できるコマンドラインツールです。検索、詳細、コメント、ユーザー、おすすめフィード、ダウンロード、投稿、DM、ライブ配信の弾幕コメント……。

catbus xhs      item search 露营 --sort latest
catbus douyin   item search 露营 --sort latest
catbus bilibili item search 露营 --sort latest
catbus x        item search camping --sort latest

4 つのプラットフォームに、ほぼ同じ 4 つのコマンド。出力される JSON はすべて同じ構造です。ノートも作品も動画もポストも、すべて item。検索は必ず search、いいねは必ず like。一度覚えれば、10 のプラットフォームすべてで使えます。

対応済みの 10 プラットフォームと開発中の 10 プラットフォーム

🚀 catbus を選ぶ理由

🧭 同じ意味には、同じ名前

意味が同じ機能は、どのプラットフォームでも同じコマンド、同じパラメータ、同じ出力。プラットフォーム固有の呼び名(note、aweme、tweet……)を使ってしまっても大丈夫。どの単語を使えばいいか、catbus が教えてくれます。

📦 必要なのは Node だけ

Python もコンパイラも、システム依存のパッケージも不要です。ネイティブ依存はすべてビルド済みバイナリ付きで、Windows・macOS・Linux の x64 / arm64(musl を含む)をカバー。8 つのターゲット環境すべてで、CI がひとつずつスモークテストしています。

🤖 AI エージェントのために生まれた

stdout には JSON だけ。終了コードは安定していて、エラーには次に実行すべきコマンドが添えられます。catbus platforms は全機能の一覧を出力します。エージェント用スキル と llms.txt を同梱しています。

🔐 ログイン情報はあなたの PC の中だけに

QR コード、SMS、cookie のインポートに対応。認証情報は プラットフォーム × エンドポイント × アカウント ごとに ~/.catbus/(0700 / 0600)に分けて保存され、複数のアカウントもいつでも切り替えられます。データの収集・送信は一切なく、テレメトリもありません。

🧪 上流とバイト単位で一致

すべてのリクエストの URL、ヘッダー順、cookie、body、署名を、乱数と時刻を固定したうえで上流の実装と1 バイトずつ突き合わせています。560+ 件のゴールデンデータと 940+ 件のオフラインテストが、あらゆる変更を見守ります。

🛡️ ブラウザ級のネットワークスタック

本物の Chrome と一致する TLS / HTTP2 フィンガープリント。上流の署名 JS は手を加えずにサンドボックスで実行し、スライダー型・クリック選択型の CAPTCHA はローカルの ONNX と OpenCV で自動認識します。

📊 数字で見る catbus

🚌 プラットフォーム ⌨️ 実装済みコマンド 🧪 ゴールデンデータ ✅ オフラインテスト 💻 ターゲット環境
10 300+ 560+ 940+ 8

🏗️ アーキテクチャ

catbus のアーキテクチャ

  • ひとつのレジストリがすべてを動かす:コマンド解析、4 階層の --help、catbus platforms、機能マトリクス はすべて同じレジストリから生成されるため、互いに食い違うことはありません。
  • 1 プラットフォームに、1 セットのファイル:client はセッションと署名を担当し、api は上流のメソッドと 1 対 1 で対応、normalize は生データを統一された型に変換し、resolve は ID・リンク・共有用短縮 URL・me のどれでも引数として使えるようにします。
  • 拡張可能:仕様には app / pc エンドポイントの枠があらかじめ用意されており、JS 以外の上流は provider プロトコルで接続する予定です。

🤖 AI エージェントのために生まれた

catbus は最初の日から「プログラムに呼び出される」ことを前提に設計されています。

catbus platforms douyin | jq '.data.commands[] | select(.status=="implemented") | .resource + " " + .action'
  • 自己記述的:各プラットフォーム・各コマンドのログイン要否、実装状況、上流での対応度合いが、コマンドひとつで分かります。
  • 予測可能:成功も失敗も同じエンベロープ { ok, data, page, error }。error.hint が次に実行すべきコマンドをそのまま示します。
  • つなげられる:出力されるオブジェクトはすべて id と url を持つので、前のコマンドの結果をそのまま次のコマンドに渡せます。
  • 節度がある:危険な操作には明示的な -y が必須。投稿は自分だけに公開することもでき、リスク制御に引っかかったときは RISK_CONTROL とはっきり報告して、黙ってリトライすることはありません。

コマンドひとつで、catbus スキルを Claude Code・Cursor・Codex などのエージェントに入れられます:

npx skills add cv-cat/catbus

スキルは必要な分だけ読み込まれます。概要は 1 ページだけで、扱うプラットフォームや作業の種類(収集、投稿、ライブと DM、トラブル対応)に応じてサブファイルを読みます。安全のルールも組み込み済みです:ログインはあなたに任せる、書き込みは必ず確認、投稿は既定で非公開、リスク制御に当たったら止まる。

⚡ 30 秒で乗車

npm i -g catbus-cli

catbus doctor                 # 環境をチェック
catbus bilibili auth login    # QR コードでログイン
catbus bilibili item search 猫 --limit 20

Docker やソースからのインストールも可能です。詳しい手順は クイックスタート をご覧ください。

📚 ドキュメント

以下のドキュメントは中国語(簡体字)で書かれています。

🚀 クイックスタート インストールから最初のデータのエクスポートまで
🔑 ログイン · ⚙️ 設定 · 🐳 Docker QR コード / cookie、複数アカウント、プロキシ、コンテナ
📤 出力とエラー処理 エンベロープ、正規化された型、ページング、終了コード
🧭 プラットフォーム別ガイド · 🗂️ 機能マトリクス 各プラットフォームの対応状況と引数の渡し方
🧪 サンプルスクリプト 横断検索、コメントのエクスポート、投稿のバックアップ、ライブ弾幕の記録
📐 AGENTS.md catbus の仕様そのもの
❓ よくある質問 なぜログインが必要?リスク制御に引っかかったら?……

🤝 コントリビュート

issue も PR も歓迎します。新しいプラットフォーム、新しいコマンド、プラットフォーム側の API 変更への対応、ドキュメントの改善、なんでもどうぞ。始める前に CONTRIBUTING.md と AGENTS.md に目を通してください(仕様が先、リクエストには必ずゴールデンテストを)。セキュリティ上の問題は SECURITY.md に従って非公開で報告してください。

📈 Star の推移

Star History Chart

🍔 コミュニティ

スクレイピングや AI エージェントに興味があれば、グループチャット(中国語)にぜひご参加ください。

グループが満員のときや QR コードの期限が切れているときは、issue を立てるか WeChat / QQ でお知らせください。

group-1 group-2 group-3 group-4 (2000 人の QQ グループ)
group1 group2 group3 group4
⚠️ 免責事項
  • 本プロジェクトは学習および研究のみを目的としています。商用目的、その他いかなる違法な目的にも使用しないでください。
  • 使用にあたっては、各プラットフォームのユーザー規約およびサービス利用規約、ならびにお住まいの地域の法令を遵守してください。他人のプライバシーに関わるデータを収集・拡散したり、プラットフォームに過大なリクエスト負荷をかけたりしないでください。
  • 自動化された操作はプラットフォームのリスク制御を作動させ、CAPTCHA、レート制限、さらにはアカウントの凍結につながるおそれがあります。本プロジェクトの使用によって生じる一切の結果については、使用者が自らの責任で負うものとします。
  • 本プロジェクトは上記のいずれのプラットフォームとも関係がなく、その許可や承認も受けていません。各プラットフォームの名称および商標は、それぞれの所有者に帰属します。

📄 License

MIT © 2026 cv-cat


catbus
ご乗車ください、行き先はあらゆるプラットフォーム · All aboard, every platform.