dataforseo について
dataforseoは、DataForSEO APIを通じてSEOデータを取得・分析するマーケティング向けスキルです。キーワード、検索結果、被リンク、サイト監査などを扱い、結果の抽出とCSV出力にも対応します。
主な機能
- 01キーワード検索量と候補の取得
- 02検索結果と順位データの取得
- 03被リンクと競合ドメインの分析
- 04ページ監査と技術情報の取得
- 05結果の抽出とCSV出力
活用シーン
- 01キーワード検索量と競争度の調査
- 02サイトの順位対象キーワードの確認
- 03競合と被リンク差分の分析
- 04SEOデータのCSV保存
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ nikhilbhansali/ dataforseo-skill-claude --skill dataforseoインストール後、Claude Code で/dataforseoを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/api_reference.mduse_cases.mdscripts/dataforseo_client.py詳細
DataForSEO API スキル
包括的な SEO データの取得と分析を行うための、すべての DataForSEO API への汎用インターフェースです。
認証情報の設定
初回使用の前に、認証情報を設定してください。
import sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import save_credentials, verify_credentials
# Get credentials from https://app.dataforseo.com/
login = "[email protected]" # API login (email)
password = "your_api_password" # API password (from dashboard)
# Verify and save
if verify_credentials(login, password):
save_credentials(login, password)
print("Credentials saved!")
認証情報は ~/.dataforseo_config.json に保存されます。更新するには、セットアップを再度実行してください。
クイックスタート
import sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import *
# Example: Get search volume
response = keywords_search_volume(
keywords=["seo tools", "keyword research"],
location_name="United States"
)
results = extract_results(response)
csv_path = to_csv(results, "keyword_volumes")
print(f"Results saved to: {csv_path}")
API の選択ガイド
| ユーザーのリクエスト | 使用する関数 |
|---|---|
| 検索ボリューム、CPC、競合状況 | keywords_search_volume() |
| キーワード候補/提案 | labs_keyword_ideas() または labs_related_keywords() |
| サイトが検索順位を獲得しているキーワード | labs_ranked_keywords() |
| キーワードの SERP 結果 | serp_google_organic() |
| ローカル/マップの検索順位 | serp_google_maps() |
| YouTube の検索順位 | serp_youtube() |
| 被リンクプロファイル | backlinks_summary() |
| 被リンク一覧 | backlinks_list() |
| 参照ドメイン | backlinks_referring_domains() |
| ドメインのオーソリティ/ランク | backlinks_bulk_ranks() |
| 競合ドメイン | labs_competitors_domain() |
| キーワードギャップ分析 | labs_domain_intersection() |
| リンクギャップ分析 | backlinks_domain_intersection() |
| 技術的なページ監査 | onpage_instant_pages() |
| Lighthouse スコア | lighthouse_live() |
| テクノロジースタック | domain_technologies() |
| ブランドの言及 | content_search() |
| Google Trends | google_trends() |
基本的なワークフロー
- クライアントをインポート:スキルのパスを追加し、関数をインポートします
- API 関数を呼び出す:必須パラメーターを渡します
- 結果を抽出:
extract_results(response)を使用します - CSV にエクスポート:
to_csv(results, "filename")を使用します
import sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import labs_ranked_keywords, extract_results, to_csv
response = labs_ranked_keywords(
target="competitor.com",
location_name="United States",
language_name="English",
limit=500
)
results = extract_results(response)
csv_path = to_csv(results, "ranked_keywords")
デフォルトパラメーター
ほとんどの関数では、次の値がデフォルトで使用されます。
location_name:「United States」(「India」、「United Kingdom」などに変更できます)language_name:「English」limit:100(結果を増やすには最大 1000 まで指定できます)device:「desktop」(SERP の場合は「mobile」も指定できます)
よく使われる地域名
- United States、United Kingdom、India、Germany、Australia、Canada
- 市区町村単位の場合:「New York,New York,United States」、「London,England,United Kingdom」
出力
すべての結果は ~/dataforseo_outputs/ に CSV としてエクスポートされます。ファイル名を指定しない場合、タイムスタンプ付きの名前が自動的に付けられます。
参考ファイル
- API リファレンス:
references/api_reference.md- エンドポイントの完全なドキュメント - ユースケース:
references/use_cases.md- すぐに使えるコードレシピ
エラー処理
response = some_api_function(...)
if response.get("status_code") == 20000:
results = extract_results(response)
# Process results
else:
print(f"Error: {response.get('status_message')}")
レート制限と料金
- 最大 2000 リクエスト/分
- Live メソッドは Standard よりも料金が高くなります
get_user_data()で使用状況を確認できます- レスポンスには
costフィールドが含まれます
重要な注意事項
- 非同期エンドポイント:一部の API(merchant、app_data、business reviews)はタスクを作成します。タスクのステータスは別途確認してください。
- 上限:包括的なデータを取得するには
limitパラメーターを増やしてください(デフォルトは 100、通常の最大値は 1000) - 複数のキーワード:リストとして渡します:
keywords=["kw1", "kw2", "kw3"]
コメント
Markdown 対応