~/social/bluesky-scraper

Bluesky Scraper — 投稿・プロフィール・フィード・エンゲージメント

AT Protocol経由でBlueskyの投稿・プロフィール・フォロワー・フィード・スレッド・いいねしたユーザー・リポストしたユーザーを抽出——さらにアプリパスワードによる認証で検索とハッシュタグの結果にも対応。クリーンで正規化されたJSON。

ソーシャル TypeScriptAT Protocol グローバル
proooxy/bluesky-scraper — スペック
カテゴリsocial / ソーシャル
言語TypeScript
スタックTypeScript, AT Protocol
マーケットグローバル
出力クリーンでRAG対応のJSON

主な機能

11のモード — search、profile、posts、followers、following、feed、thread、likers、reposters、actorLikes、hashtag

認証不要の公開APIで、プロフィール・投稿・フォロワー・フォロー中・フィード・スレッド・いいねしたユーザー・リポストしたユーザーを取得

認証が必要なアプリパスワードモード — search、hashtag、自分のアカウントのいいね

投稿エンゲージメントのエクスポート — 投稿ごとのいいねしたユーザー・リポストしたユーザーの全リスト

スレッドのフラット化 — 設定可能な深さまで返信ツリーを辿る

全リストエンドポイントで、指定した件数上限まで自動カーソルページネーション

全モードで統一された、投稿とプロフィールの正規化JSON構造

堅牢なHTTP処理 — リクエストスロットリング、指数バックオフ、429/5xxでのリトライ

活用例

  • 認証付き検索によるブランド・キーワードモニタリング
  • ネットワーク全体でのハッシュタグ・トレンド追跡
  • オーディエンスのエクスポート — クリエイターやブランドのフォロワー・フォロー中リスト
  • エンゲージメント分析 — 特定の投稿に誰がいいね・リポストしたかを正確に把握
  • クリーンで正規化されたJSONによる、BI・分析・RAGパイプライン向けデータセット構築
  • 投稿配下の会話・スレッドのアーカイブ

入力パラメータ

パラメータ必須説明
modestring任意取得対象:posts、profile、followers、following、feed、thread、likers、reposters、actorLikes、search、hashtagのいずれか(デフォルト:posts)。
handlesarray任意profile/posts/followers/following/actorLikesモード用のBlueskyハンドル。例:bsky.app。
querystring任意検索テキスト(searchモード)またはハッシュタグ(hashtagモード — 自動的に#が付加されます)。
postUristring任意投稿のAT URI — thread、likers、repostersモードで使用。
feedUristring任意カスタムフィードのAT URI — feedモードで使用。
identifierstring任意認証モード(search、hashtag、actorLikes)用のBlueskyログインハンドルまたはメールアドレス。
appPasswordstring任意認証モード用のBlueskyアプリパスワード(メインアカウントのパスワードではありません)。
maxItemsnumber任意保存する投稿/プロフィールの最大数。1件ごとに1課金イベント(デフォルト:100)。

Output Example

 1{
 2  "itemType": "post",
 3  "mode": "posts",
 4  "uri": "at://did:plc:.../app.bsky.feed.post/...",
 5  "author": {
 6    "did": "did:plc:...",
 7    "handle": "bsky.app",
 8    "displayName": "Bluesky",
 9    "followersCount": 1234567
10  },
11  "text": "Example post text",
12  "createdAt": "2026-06-11T00:00:00Z",
13  "replyCount": 10,
14  "repostCount": 20,
15  "likeCount": 100,
16  "langs": ["en"],
17  "url": "https://bsky.app/profile/bsky.app/post/..."
18}

Pricing

イベント課金制:保存されたアイテム(投稿またはプロフィール)1件につき$0.001。1,000件のエクスポートで約$1.00、maxItemsが件数とコストの両方に上限を設けます。

Tips

  • まずは公開モードから始めましょう。 プロフィール、投稿、フォロワー、エンゲージメント(likers/reposters)にはログインが不要です——アプリパスワード認証はsearchとhashtagの実行時のためにとっておきましょう。
  • 投稿だけでなくエンゲージメントもエクスポートしましょう。 likersとrepostersモードは、誰がその投稿を拡散したかを正確に明らかにします——多くのBlueskyスクレイパーが見落としているシグナルです。
  • 大規模アカウントのフォロワー/フォロー中を取得する際はmaxItemsで上限を設定し、実行を高速かつコストを予測可能に保ちましょう。

よくある質問

Blueskyの認証情報は必要ですか?
search、hashtag、actorLikesモードのみ必要です——Blueskyの設定でアプリパスワードを生成し、appPasswordとして渡してください。profile、posts、followers、following、feed、thread、likers、repostersモードは、公開のAT Protocol APIにより認証情報なしで動作します。
任意のアカウントのいいねをエクスポートできますか?
いいえ。BlueskyのAPIは、認証済みアカウント自身のactorLikesしか公開していません。そのため、handleとログイン用identifierは同一アカウントを指している必要があります。
投稿やフィードのURIはどうやって調べますか?
AT URIはat://did:plc:.../app.bsky.feed.post/...のような形式です——BlueskyのAPI出力や開発者向けツールからコピーしてください。フィードURIはapp.bsky.feed.generatorコレクションを使用します。
アプリパスワードを使うのは安全ですか?
はい——Blueskyのアプリパスワード(設定 → App Passwordsで作成)を使用し、メインパスワードは絶対に使わないでください。スコープが限定されており、取り消し可能で、シークレット入力として渡されます。

~/social の関連ツール

Bluesky Scraper — 投稿・プロフィール・フィード・エンゲージメントを実行、またはカスタム開発を依頼

数分でApify上での抽出を開始できます。または、あなたの取得元とスキーマに合わせたオーダーメイドのスクレイパーとRAGパイプラインの構築を依頼できます。

Apifyで実行 カスタムデータを依頼