Skip to content

cUDGk/karotter-selfbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Karotter Selfbot

Karotter 非公式 API リファレンス & セルフ Bot 用ライブラリ (Python + TypeScript)

Python TypeScript API Endpoints Socket.IO Events Status License: MIT

Karotter の全 API リファレンスと、Python / TypeScript クライアントの実装ガイド(ライブラリ実装は WIP)。


概要

Karotter の非公式 API リファレンスとセルフ Bot 用クライアントライブラリ。JS バンドル解析と実 API テストから作成。

注意事項

  • これは非公式プロジェクトです。Karotter / KaronNetWork とは一切関係ありません。
  • APIの情報は独自に調査・解析したものです。最新のAPI仕様とは異なる可能性があります。 エンドポイントやリクエスト/レスポンスの形式は予告なく変更されることがあります。
  • このリポジトリは都度更新していきますが、常に最新とは限りません。 実際のAPIの挙動と照らし合わせて確認してください。
  • 利用は自己責任でお願いします。このライブラリの使用によるアカウントBANやデータ損失等について、作者は一切責任を負いません。
  • Karotterの API・Bot利用規約 を守ってください。スパム、大量投稿、無差別DM、レート制限回避、無断データ収集、AI学習利用等は禁止されています。

中身

APIリファレンス (docs/)

Karotterの全APIエンドポイントを機能ごとにまとめたドキュメントです。

ドキュメント 内容
認証 ログイン、新規登録、CSRF、トークンリフレッシュ、セッション、マルチアカウント
ユーザー プロフィール、設定、アバター/ヘッダー画像、アカウント管理
投稿 投稿の作成/編集/削除、いいね、リカロット、ブックマーク、リアクション、投票、アナリティクス
タイムライン タイムライン、おすすめアルゴリズム、A/Bテストバリアント
検索 投稿・ユーザー・ハッシュタグ検索、トレンド、ディスカバー
フォロー フォロー/アンフォロー、ブロック、ミュート、フォローリクエスト
DM ダイレクトメッセージ、グループチャット、添付ファイル、投票、通話
通知 通知タイプ、プッシュ通知 (FCM)、未読数
ソーシャル サークル、リスト、ストーリー、匿名質問、リンクプレビュー
ラジオ スペース (音声通話)、WebRTC、スピーカー管理
絵チャ 絵チャ (共同お絵かき)、レイヤー、ストローク
掲示板 掲示板、スレッド、リプライ、SSE
Socket.IO リアルタイムイベント (DM、通話、絵チャ、スペース、通知)
データモデル 全オブジェクトの型定義
管理 管理パネル、モデレーション、アナリティクス
定数 Enum、フラグ、localStorageキー一覧

Python ライブラリ (python/)

httpx + python-socketio を使った非同期クライアント。

cd python
pip install -e .
import asyncio
from karotter import KarotterClient

async def main():
    client = KarotterClient(username="ユーザー名", password="パスワード")
    await client.login()

    # 投稿
    post = await client.create_post(content="Pythonから投稿!")

    # タイムライン取得
    timeline = await client.get_timeline(mode="latest", page=1)

    # いいね
    await client.like(post.id)

    # DM送信
    await client.send_message(group_id=123, content="やっほー!")

    # 検索
    results = await client.search("karotter")

    await client.close()

asyncio.run(main())

TypeScript ライブラリ (typescript/)

fetch + socket.io-client を使ったクライアント。

cd typescript
npm install
npm run build
import { KarotterClient } from "./src/client";

const client = new KarotterClient({
  username: "ユーザー名",
  password: "パスワード",
});

await client.login();

// 投稿
const post = await client.posts.create({ content: "TypeScriptから投稿!" });

// タイムライン
const timeline = await client.posts.getTimeline({ mode: "latest" });

// いいね
await client.posts.like(post.id);

// DM
await client.dm.sendMessage(123, { content: "やっほー!" });

// 検索
const results = await client.search.search("karotter");

ベースURL

https://api.karotter.com/api

フェイルオーバー: api.karotter.jp, api.karotter.net, apikarotter.karon.jp

コントリビュート

新しいエンドポイントを見つけた場合や、仕様が変わっていた場合はPRお願いします。ネットワークログやJSバンドルの参照箇所など、根拠を添えてもらえると助かります。

ライセンス

MIT

About

Karotter SNS 非公式APIリファレンス & セルフBot用ライブラリ (Python + TypeScript)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors