mcpField
X
xiaohongshu-top-account

xiaohongshu-top-account

github.com/redfox-dataマーケティング・グロース450281 回インストール1 日前に更新
リポジトリ

xiaohongshu-top-account について

xiaohongshu-top-accountは、小红书のアカウントランキングを調べるコンテンツ運用者やクリエイター向けのスキルです。カテゴリ別に日次・週次・月次ランキングを取得し、HTMLレポートを生成できます。定期配信の登録にも対応します。

主な機能

  1. 01日次・週次・月次ランキングの検索
  2. 02カテゴリ別のアカウント絞り込み
  3. 03ビジュアルHTMLレポートの生成
  4. 04PDFまたは画像としてのレポート出力
  5. 05ランキングの定期配信設定

活用シーン

  1. 01小红书の特定カテゴリで人気アカウントを追跡
  2. 02日次・週次・月次のアカウント動向を確認
  3. 03ダウンロードや出力用のランキングレポートを作成
  4. 04ランキング更新の定期配信を購読

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/redfox-data/redfox-community --skill xiaohongshu-top-account

インストール後、Claude Code で/xiaohongshu-top-accountを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.en.md
README.md
references/
api_docs.md
score_rules.md
scripts/
fetch_rank.py
generate_report.py

詳細

小红书人気アカウントのおすすめ

概要

この Skill は、https://redfox.hk/story/api/xhsData/query データインターフェースを基に、 小红书の全カテゴリー/カテゴリー別アカウントについて、日次/週次/月次のパフォーマンスランキングを照会します。次の3つの主要機能に対応しています:

  1. ランキング照会 — 日間・週間・月間ランキング TOP50 を照会
  2. 分野別照会 — カテゴリーで絞り込み(美容、グルメ、旅行、母子、フィットネス/運動など)
  3. レポートのダウンロード — HTML のビジュアルレポートを生成し、PDF/スクリーンショットのエクスポートに対応
  4. 定期購読 — 自動の定期配信を設定

認証

API Key の取得

红狐hub にアクセスしてAPI KEYを取得してください。

API Key の設定

方法1:OpenClawを例に、REDFOX_API_KEYを~/.openclaw/openclaw.jsonに追加します。

{ "env": { "REDFOX_API_KEY": "ak_xxxx..." } }

方法2:ターミナルで設定します:export REDFOX_API_KEY="ak_xxxx..."

export REDFOX_API_KEY="ak_xxxx..."

トリガーワードと意図の判定

ユーザーの意図典型的なトリガーワード対応する操作
ランキング照会小红书の日間ランキング、週間ランキング、月間ランキング、TOP50、人気アカウント、ランキング、最新のおすすめAPIを呼び出し、書式を整えて出力
分野別照会美容系/グルメ系/旅行系/母子系/フィットネス系...の小红书ランキングAPIを呼び出し、categoryで絞り込み
レポートのダウンロードレポートをダウンロード、ランキングをエクスポート、レポートを生成--html パラメーターを使用してHTMLを自動生成
定期購読日間/週間/月間ランキングを購読、定期配信、毎日送ってWorkBuddy Automationを作成

実行フロー

厳守する出力順序(必ず順番どおりに実行し、省略しないでください)

ステップ1:内容の出力

  1. スクリプトを呼び出してランキングデータを照会します(デフォルトでは20件のみ照会):
    python scripts/fetch_rank.py --query "用户原始问题" --limit 20 --html
    
  2. 標準テンプレートに従ってランキングデータを整形して出力します(Markdownテーブル形式、最大20件)

ステップ2:定期購読の確認

  • ランキングデータを出力した後、次の質問をそのまま追加します(ユーザーの返答を待ちません):
    📬 订阅服务
    1️⃣ 是否需要订阅每日/周/月的小红书账号最新排名,订阅后定时推送给您?
    

2️⃣ 是否需要订阅具体赛道的账号表现?我们支持:综合全部、出行代步、休闲爱好、影视娱乐、数码科技、医疗保健、综合杂项、星座情感、时尚穿搭、婚庆婚礼、拍摄记录、学习教育、化妆美容、居家装修、旅行度假、亲子育儿、个人护理、美味佳肴、职业发展、宠物天地、潮流鞋包、日常生活、科学探索、新闻资讯、体育锻炼

第三步:交付 HTML 报告

  • 脚本已自动生成HTML文件,使用 deliver_attachments 工具交付脚本输出的 HTML 文件路径
  • 追加以下内容:
    ⚡ その他の操作
    • 下のHTMLレポートファイルをダウンロードすると、ブラウザーで開いて確認できます。ワンクリックでPDF/高解像度画像にエクスポートできます
    • 今回のランキングには全50件のデータがあります。すべて表示しますか?
    

用户表示需要查看全部数据时:

⚠️ 强制要求:必须同时输出 Markdown 表格和交付 HTML 报告,两者缺一不可。

  1. 重新调用脚本获取完整50条数据:
    python scripts/fetch_rank.py --query "用户原始问题" --limit 50 --html
    
  2. 会話内で全50件のデータを含むMarkdownテーブルを出力します(標準テンプレートに従う)
  3. 必ず deliver_attachments を使用してHTMLファイルを渡してください(重要な手順、省略不可)。ユーザーに「以下は全50件のデータを含むHTMLレポートです。クリックしてダウンロードし、確認できます」と伝えます

フロー1:ランキング照会(推奨:自然言語モード)

ユーザーの元の質問をそのまま渡すと、スクリプトがすべての解析を自動で行います:

python scripts/fetch_rank.py --query "用户原始问题" --limit 20 --html

自動解析ロジック:

① 時間の判定と日付の計算

現在時刻に基づき、最新データが更新済みかどうかを判定します:

ランキングの種類更新時刻現在時刻 < 更新時刻現在時刻 >= 更新時刻
日間ランキング毎日 19:002日前を取得 (offset=2)前日を取得 (offset=1)
週間ランキング毎週月曜日 15:002週前を取得 (offset=2)1週前を取得 (offset=1)
月間ランキング毎月1日 午前9:002か月前を取得 (offset=2)1か月前を取得 (offset=1)

日付の計算式:

  • 日間ランキング:date.today() - timedelta(days=offset)
  • 週間ランキング:date.today() - timedelta(weeks=offset) の後、直近の月曜日
  • 月間ランキング:date.today() - timedelta(days=30*offset) の後、各月の1日

更新ルール(出力時にユーザーへ伝える):

  • 日間ランキング:毎日 19:00 に更新
  • 週間ランキング:毎週月曜日 15:00 に更新
  • 月間ランキング:毎月 1日 9:00 に更新
② 期間の判定

ユーザーのテキストから日/週/月を自動判定します(明示されていない場合はデフォルトで日間ランキング):

  • 「週」/「週間ランキング」を含む → week
  • 「月」/「月間ランキング」を含む → month
  • それ以外はデフォルト → day
③ 遡及範囲の検証
ランキングの種類最大遡及期間範囲外の場合の処理
日間ランキング過去7日間利用可能な直近の日付に自動で切り替え
週間ランキング過去3週間利用可能な直近の日付に自動で切り替え
月間ランキング過去3か月利用可能な直近の日付に自動で切り替え

範囲外の場合:-ユーザーが当日または未来のランキングを照会した場合、ランキングの説明に「申し訳ありません🙏、最新データは昨日/先週/先月のものです。ご要望に最も近い昨日/先週/先月の人気ランキングをお届けします。」を追加します。 -ユーザーが遡及可能な日付より前の期間を照会した場合、ランキングの説明に「申し訳ありません🙏、現在のランキングで遡及できるのは「過去7日間/過去3週間/過去3か月」までです。ご要望に最も近い期間を照会します。」と追加します。

④ 分野(type)の照合

あいまい検索に対応しています。マッピング表は references/api_docs.md を参照してください。

よく使われるマッピング:

ユーザーの表現マッピング先
フィットネス、運動、ヨガスポーツ・運動
美容、メイク、スキンケアメイク・美容/パーソナルケア
グルメ、飲食店巡り、料理グルメ
旅行、観光旅行・バケーション
母子、育児親子・育児
コーディネート、ファッションファッション・コーディネート

一致するものがない場合は全カテゴリーを対象にし、認識できなかった分野のカテゴリーをユーザーに伝えます。

⑤ データのフォールバック機構

重要:スポーツ・運動など一部のカテゴリーは、特定の日付でデータが空になることがあります。その場合は次の手順を実行します:

  1. 1日前の日付を自動で試す
  2. 最大3日間遡る
  3. それでもデータがない場合は、その期間には該当カテゴリーのデータがないことをユーザーに伝える

フロー2:レポートのダウンロード
  1. 照会時に --html --limit 50 パラメーターを追加すると、スクリプトがHTMLレポートを自動生成します
  2. deliver_attachments を呼び出してHTMLファイルを渡します(アカウント名をクリックすると小红书のプロフィールに移動できます)

フロー3:定期購読
  1. 購読期間(日次/週次/月次)を確認します。
  2. automation_update を使用して自動化タスクを作成します:
    • 日次購読:FREQ=DAILY;BYHOUR=8;BYMINUTE=0
    • 週次購読:FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0
    • 月次購読:FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0;INTERVAL=4
  3. automation prompt:查询小红书最新{period}榜(综合全部)并推送给用户

標準出力テンプレート

次の順序で必ず出力し、どの手順も省略しないでください:

ステップ1:内容の出力
📊 小红书{period_label} · {category_label}

数据日期:{date}
共 {total} 个账号上榜

💡 榜单说明:{period_update_time}更新昨日/上周/上月数据。

📐 排名算法:排名根据达人在小红书的**总粉丝数**、周期内的**粉丝增量**、**点赞增量**、**收藏增量**、**分享增量**以及**评论增量**加权计算所得,满分100分。

| 排名 | 账号名 | 综合评分 | 总粉丝数 | 新增笔记 | 新增粉丝 | 新增点赞 | 新增评论 | 新增收藏 | 新增分享 |
|:---:|--------|:-------:|:-------:|:-------:|:-------:|:-------:|:-------:|:-------:|:-------:|
| 🥇 1 | 账号A · 赛道 | 96 | 254.06w | 7 | 6919 | 24.64w | 6.68w | 2.53w | 13.39w |
| 🥈 2 | 账号B · 赛道 | 89 | 113.55w | 1 | 1.91w | 7.90w | 4787 | 2.18w | 3.12w |
| 🥉 3 | 账号C · 赛道 | 87 | 439.14w | 2 | 5859 | 16.51w | 993 | 7688 | 687 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |

统计概览:上榜账号 {total} · 最高互动 {max_interaction} · 总新增笔记 {total_notes}

ステップ2:定期購読の確認(そのまま追加し、返答を待たない)
📬 订阅服务
1️⃣ 是否需要订阅每日/周/月的小红书账号最新排名,订阅后定时推送给您?
2️⃣ 是否需要订阅具体赛道的账号表现?我们支持:综合全部、出行代步、休闲爱好、影视娱乐、数码科技、医疗保健、综合杂项、星座情感、时尚穿搭、婚庆婚礼、拍摄记录、学习教育、化妆美容、居家装修、旅行度假、亲子育儿、个人护理、美味佳肴、职业发展、宠物天地、潮流鞋包、日常生活、科学探索、新闻资讯、体育锻炼

ユーザーが「購読が必要」と返信した場合、calendar_create ツールを使用して予定を作成します:

  • パラメーター:
    • title:小红书{period_label}ランキング配信
    • description:小红书{period_label}ランキングを購読し、最新のランキングデータを自動で照会して配信
    • start_time:購読期間に基づいて計算(日次08:00/毎週月曜日08:00/毎月1日08:00)
    • end_time:start_time の1時間後
    • reminder:0(リマインダー不要)
  • 作成が成功したら、予定が作成されたことをユーザーに伝えます
ステップ3:HTMLレポートを渡す(必ず渡す)

⚠️ 必須:直ちに deliver_attachments を使用してファイルを渡してください。実際にファイルを渡さず、ダウンロードを促すだけにしてはいけません。

  • スクリプトによってHTMLファイルが自動生成されています(パスは出力の末尾にあります)
  • 必ず deliver_attachments を使用してHTMLファイルを渡してください(重要な手順です。省略するとユーザーがレポートを確認できません)
  • ファイルを渡した後、次のメッセージを追加します:
⚡ 更多操作
• 点击下方下载HTML报告文件,可在浏览器中打开查看,支持一键导出PDF/高清图片
• 本次榜单完整共50条数据,是否需要查看全部?

⚠️ フィールドの説明:

  • 最高インタラクション数:インタラクション総数 = いいね + コメント + 保存 + シェア。ランキング内で最もインタラクション数が多いアカウントを指します
  • 現在のインターフェースが返すのは、各個別フィールド(総フォロワー数、新規フォロワー、新規いいね、新規コメント、新規保存、新規シェア)のみです
  • 分野はアカウント名の下に「アカウント名 · 分野」の形式で表示します

HTMLレポートのテンプレート仕様

表の列の仕様
列名説明
順位1~3位は金・銀・銅メダル風、それ以外はグレーのバッジで表示します
アカウント名クリックするとREDのプロフィールに移動できます。ジャンルはアカウント名の下に表示します
総フォロワー数形式:254.06w
新規投稿数整数
新規フォロワー数整数または w 単位
新規いいね数w 単位
新規コメント数整数または w 単位
新規お気に入り数整数または w 単位
新規シェア数整数または w 単位

注意:総合スコア列は表示しません。表の列数を11列から9列に減らします。

統計カードの仕様
指標説明
ランキング掲載アカウント数ランキングの合計数。デフォルトは50です
最大エンゲージメント数エンゲージメントの合計数 = いいね + コメント + お気に入り + シェア
新規投稿の合計数全アカウントの新規投稿数の合計
ランキングの説明と順位付けアルゴリズム
<div class="notice">
  <div style="margin-bottom: 8px;">💡 <strong>榜单说明</strong>:{period_update_desc}更新,与实时数据存在差异。</div>
  <div>📐 <strong>排名算法</strong>:排名根据达人在小红书的 <strong>总粉丝数</strong>、周期内的 <strong>粉丝增量</strong>、<strong>点赞增量</strong>、<strong>收藏增量</strong>、<strong>分享增量</strong> 以及 <strong>评论增量</strong> 加权计算所得。</div>
</div>

API パラメーターの説明

インターフェース情報
  • URL:POST https://onetotenvip.com/story/xhsData/query
  • 成功コード:code: 2000(0以外!)
リクエストパラメーター
パラメーター名型説明例
dateTypeintランキングの種類:1=日次、2=週次、3=月次1
rankDatestring日付(形式:YYYY-MM-DD)"2026-04-28"
typestringジャンル名(日本語)"スポーツ・運動"
sourcestring必ず 小红书指数榜 を指定します"小红书指数榜"
各ランキングの日付パラメーター
ランキングの種類rankDate の形式例offset の計算
日次YYYY-MM-DD(前日または前々日)"2026-04-28"現在時刻が19:00より前→offset=2、19:00以降→offset=1
週次YYYY-MM-DD(月曜日)"2026-04-20"現在時刻が月曜日の15:00より前→offset=2、それ以外→offset=1
月次YYYY-MM-02(毎月1日)"2026-04-02"現在時刻が2日の09:00より前→offset=2、それ以外→offset=1
レスポンスフィールド
フィールド説明
accountNameアカウント名
categoryジャンル分類
followers総フォロワー数
newNoteCount新規投稿数
newFans新規フォロワー数
newLikes新規いいね数
newComments新規コメント数
newCollects新規お気に入り数
newShares新規シェア数
profileUrlREDのプロフィールリンク

使用例

例1:美容・コスメの日次ランキングを検索
  • シナリオ/入力:ユーザーが「REDの美容・コスメ日次ランキング」と発言
  • 期待される出力:美容・コスメの当日 TOP20 ランキングデータを返します
  • 重要なポイント:ジャンルを「化粧品・美容」として自動解析し、日付を最新の利用可能な日に自動計算します
例2:グルメの週次ランキングを検索
  • シナリオ/入力:ユーザーが「最新のグルメ週次ランキング」と発言
  • 期待される出力:グルメの先週のランキングを返します
  • 重要なポイント:期間を week、ジャンルを「グルメ」として自動解析します
例3:HTML レポートを生成
  • シナリオ/入力:ユーザーが完全なレポートのエクスポートを希望
  • 期待される出力:ダウンロード可能な HTML ファイルを生成します
  • 重要なポイント:fetch_rank.py の呼び出し時に --html パラメーターを追加すると、HTML レポートが自動生成されます

リソースインデックス

  • スクリプト: scripts/fetch_rank.py を参照(用途:REDのランキングデータを検索)
  • スクリプト: scripts/generate_report.py を参照(用途:fetch_rank.py --html から呼び出され、HTML を生成)
  • 参考資料: references/api_docs.md を参照(参照するタイミング:API パラメーターの詳細を確認する場合)

注意事項

  • 日次ランキングはデフォルトで TOP 20 を表示します。全50件はレポートまたは追加の質問で確認できます。
  • ジャンルのキーワードは LLM による意味的な曖昧マッチングに対応しています。どうしても識別できない場合は、全ジャンルを含む総合ランキングに切り替えます。
  • HTML レポートのアカウント名は、いずれもクリックするとREDのプロフィールに移動できます(profileUrl フィールドに基づきます)。
  • レポートを生成する前に、workspace への書き込み権限があることを確認してください。
  • 最大エンゲージメント数は、いいね + コメント + お気に入り + シェアから計算する必要があります。API が返す newInteraction フィールドは直接使用できません(このフィールドの値が0の場合があります)。
  • 月次ランキングの日付パラメーターには毎月1日を指定する必要があります。たとえば、前月のランキングを検索する場合は "2026-04-02" を使用します。
  • スポーツ・運動の分類:日付によってはデータが空で返される場合があるため、日付を自動的にさかのぼって再試行する必要があります。

コメント