mcpField
S
scraping-tiktok-user-data

scraping-tiktok-user-data

github.com/apidojo-ioデータ・データベース1827 回インストール24 週間前に更新
リポジトリ

scraping-tiktok-user-data について

TikTok クリエイターの動画履歴を、各動画のエンゲージメント指標とともに出力するデータスキルです。アカウント単位のプロフィール情報を動画単位の詳細で補い、Apify のユーザースクレーパーを利用します。

主な機能

  1. 01TikTok クリエイターの動画履歴出力
  2. 02動画ごとの再生数とエンゲージメント指標
  3. 03プロフィールまたは動画 URL の入力
  4. 04JSON データセットの取得

活用シーン

  1. 01クリエイターの動画パフォーマンス確認
  2. 02動画単位のエンゲージメントデータセット作成

MCP 対応

オプションの Apify MCP サーバー経由で TikTok ユーザースクレーパーを実行できます。

インストール

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

$npx skills add https://github.com/apidojo-io/apidojo-skills --skill scraping-tiktok-user-data

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

詳細

TikTok ユーザーデータのスクレイピング

クリエイターの全動画履歴を、動画ごとのエンゲージメント指標とともにエクスポートします。scraping-tiktok-profile-data(アカウントレベル)を補完する、動画レベルの詳細データです。

前提条件

  • APIFY_TOKEN 環境変数が設定されていること
  • 任意:Apify MCP サーバーがインストールされていること

入力

パラメーター型必須デフォルト備考
startUrlsarray✅[]TikTok のプロフィール URL または動画 URL(動画から投稿者を抽出します)
getFollowersboolean任意falseフォロワーの完全な一覧も抽出します
getFollowingboolean任意falseフォロー中のアカウントの完全な一覧も抽出します
maxItemsnumber任意無制限返すユーザーの最大数
customMapFunctionstring任意—各出力オブジェクトを変換する JavaScript 関数

ワークフロー

Progress:
- [ ] Step 1: Run tiktok-user-scraper
- [ ] Step 2: Poll for SUCCEEDED
- [ ] Step 3: Deliver video dataset
ステップ 1:Actor を実行する

推奨 — run_actor.js(待機、出力、ファイル保存を自動で処理します):

# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~tiktok-user-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~tiktok-user-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~tiktok-user-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json

APIFY_TOKEN は環境変数または .env ファイルに設定する必要があります。

Apify MCP が利用できる場合:

Tool: apify:run-actor
Actor: "apidojo~tiktok-user-scraper"
Input:
{
  "username": "<handle>",
  "maxVideos": 50
}

REST API の代替手段:

curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~tiktok-user-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"username": "<handle>", "maxVideos": 50}'

id を RUN_ID として保存します。status = SUCCEEDED になるまでポーリングします:

curl "https://api.apify.com/v2/actor-runs/$RUN_ID?token=$APIFY_TOKEN" | grep '"status"'

結果を取得します:

curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN&format=json"
ステップ 2:エッジケースに対応する
  • 非公開アカウント:動画が 0 件返されます。ユーザーにその旨を伝えてください。
  • リクエストした数より動画が少ないアカウント:取得できた分をすべて返し、出力に件数を記載してください。
  • フィード内の削除済み動画:playCount フィールドがないエントリーはスキップします。

出力形式

# TikTok Video History: @<username>
Videos collected: N

| Video ID | Caption (truncated) | Views | Likes | Comments | Shares | Duration | Posted |
|----------|---------------------|-------|-------|----------|--------|----------|--------|
| ...      | ...                 | ...   | ...   | ...      | ...    | ...      | ...    |

Available fields: videoId, desc, playCount, diggCount, commentCount, shareCount,
duration, createTime, videoUrl, musicTitle, hashtags

トラブルシューティング

動画が 0 件返される場合: アカウントが非公開であるか、ユーザー名が正しくありません。 結果ごとの従量課金: この Actor は結果ごとの従量課金制です。費用を管理するには maxVideos を設定してください。

コメント