Token导航 LogoToken导航TokenDH.com
研究检索需要联网clawhub未标认证来源可访问clear审计提醒

dataforseodataforseo 搜索

Agent Skill

用于辅助数据整理、表格处理、CSV/Excel 分析、指标计算和图表准备。它适合让 Agent 清洗字段、汇总数据、发现异常、生成统计口径或把分析结果转成可读说明。使用时需要确认数据来源、字段含义和时间范围,避免把样本数据当全量事实;涉及敏感数据、导出文件或批量写回时,应先确认权限和脱敏边界。

总安装

9,647

周安装

406

GitHub Stars

公开资料未说明

下载量

3,378
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dataforseo(dataforseo 搜索)
来源仓库:https://github.com/maverick-software/dataforseo
安装命令:
openclaw skills install dataforseo
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install dataforseo

简介

利用 DataForSEO API 抓取 Google SERP 搜索结果 SEO 数据。

  • 覆盖关键词排名反向链接页面元素解析等核心指标。dataforseo 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 适合批量整理竞品情报优化自身搜索营销策略方向。
  • 免费额度有限超出后按次计费请控制调用频次预算。
  • 禁止用于恶意爬取或违反 robots.txt 规则的行为。

SKILL.md

name
dataforseo
description
Search Google and gather SEO data using the DataForSEO API. Supports SERP results, keyword data, backlinks, and on-page analysis. Use when you need high-volume Google searches (bulk lead generation), keyword research, rank tracking, or detailed SERP data at scale. Pay-as-you-go pricing with no monthly commitment. Requires DATAFORSEO_LOGIN and DATAFORSEO_PASSWORD.
metadata
requires
env
[DATAFORSEO_LOGIN, DATAFORSEO_PASSWORD]
primaryEnv
DATAFORSEO_LOGIN

DataForSEO Skill

Pay-as-you-go Google SERP + SEO data API. Best for high-volume lead generation at low cost. No monthly commitment — only pay for what you use.

Credentials

DATAFORSEO_LOGIN=your_email@example.com
DATAFORSEO_PASSWORD=your_password

Sign up at dataforseo.com. Minimum deposit: $50. Cost per SERP task: ~$0.0006 (very cheap for bulk).

Quick Usage — SERP Search

import requests, os, json
from base64 import b64encode

def dfs_auth():
    creds = f"{os.environ['DATAFORSEO_LOGIN']}:{os.environ['DATAFORSEO_PASSWORD']}"
    return b64encode(creds.encode()).decode()

def dfs_search(keyword: str, location: str = "United States", language: str = "en") -> list[dict]:
    """
    Search Google via DataForSEO Live SERP endpoint.
    Returns organic results: {url, title, description, rank_absolute, domain}
    """
    headers = {
        "Authorization": f"Basic {dfs_auth()}",
        "Content-Type": "application/json"
    }
    payload = [{
        "keyword": keyword,
        "location_name": location,
        "language_name": language,
        "device": "desktop",
        "os": "windows",
        "depth": 10
    }]
    
    url = "https://api.dataforseo.com/v3/serp/google/organic/live/advanced"
    r = requests.post(url, headers=headers, json=payload)
    r.raise_for_status()
    
    data = r.json()
    tasks = data.get("tasks", [])
    if not tasks or tasks[0]["status_code"] != 20000:
        return []
    
    items = tasks[0]["result"][0].get("items", [])
    organic = [i for i in items if i.get("type") == "organic"]
    
    return [{
        "title": i.get("title"),
        "url": i.get("url"),
        "description": i.get("description"),
        "rank": i.get("rank_absolute"),
        "domain": i.get("domain")
    } for i in organic]

Lead Generation — Batch Mode (Most Efficient)

def dfs_batch_search(queries: list[str], location: str = "United States") -> dict[str, list]:
    """
    Submit multiple queries in one API call (up to 100).
    Much more efficient — one round trip for many queries.
    Returns dict: {query: [results]}
    """
    headers = {
        "Authorization": f"Basic {dfs_auth()}",
        "Content-Type": "application/json"
    }
    
    # Build task list
    tasks = [{
        "keyword": q,
        "location_name": location,
        "language_name": "en",
        "device": "desktop",
        "depth": 10,
        "tag": q  # use query as tag for matching results
    } for q in queries]
    
    # Submit tasks
    url = "https://api.dataforseo.com/v3/serp/google/organic/task_post"
    r = requests.post(url, headers=headers, json=tasks)
    task_ids = [t["id"] for t in r.json()["tasks"] if t["status_code"] == 20100]
    
    # Poll for results (tasks complete in ~10–60 seconds)
    import time
    time.sleep(15)
    
    results = {}
    for task_id in task_ids:
        result_url = f"https://api.dataforseo.com/v3/serp/google/organic/task_get/advanced/{task_id}"
        res = requests.get(result_url, headers=headers)
        items = res.json()["tasks"][0]["result"][0].get("items", [])
        organic = [i for i in items if i.get("type") == "organic"]
        tag = res.json()["tasks"][0].get("tag", task_id)
        results[tag] = [{"title": i["title"], "url": i["url"], "domain": i.get("domain")} for i in organic]
    
    return results

Available API Endpoints

CategoryEndpointUse Case
SERP (live)/serp/google/organic/live/advancedSingle query, instant result
SERP (async)/serp/google/organic/task_postBulk queries, cheaper
SERP (local)/serp/google/organic/live/advanced + location_codeCity-specific results
Maps/serp/google/maps/live/advancedLocal business + phone + website
Keywords/keywords_data/google_ads/search_volume/liveSearch volume data
On-Page/on_page/task_postFull site audit
Backlinks/backlinks/summary/liveLink profile

Maps Search (Best for Local Lead Gen)

def dfs_maps_search(query: str, location_code: int = 1023191) -> list[dict]:
    """
    Search Google Maps for local businesses.
    Returns: {title, url, phone, address, rating, reviews_count}
    location_code 1023191 = Portland, OR. Find codes at:
    https://api.dataforseo.com/v3/serp/google/locations
    """
    headers = {"Authorization": f"Basic {dfs_auth()}", "Content-Type": "application/json"}
    payload = [{
        "keyword": query,
        "location_code": location_code,
        "language_code": "en",
        "device": "desktop"
    }]
    url = "https://api.dataforseo.com/v3/serp/google/maps/live/advanced"
    r = requests.post(url, headers=headers, json=payload)
    items = r.json()["tasks"][0]["result"][0].get("items", [])
    return [{
        "title": i.get("title"),
        "url": i.get("url"),
        "phone": i.get("phone"),
        "address": i.get("address"),
        "rating": i.get("rating", {}).get("value"),
        "reviews": i.get("rating", {}).get("votes_count"),
        "category": i.get("category")
    } for i in items if i.get("type") == "maps_search"]

Location Codes (Common US Cities)

LOCATION_CODES = {
    "Portland, OR": 1023191,
    "Seattle, WA": 1027744,
    "Dallas, TX": 1026339,
    "Chicago, IL": 1016367,
    "Los Angeles, CA": 1013962,
    "New York, NY": 1023191,
    "Denver, CO": 1016143,
    "Phoenix, AZ": 1023725,
    "Atlanta, GA": 1013971,
    "Miami, FL": 1017862,
}
# Full list: GET https://api.dataforseo.com/v3/serp/google/locations

Pricing Reference

Task TypeCost Per 1K
SERP Live~$1.50
SERP Async (batch)~$0.60
Maps Live~$2.00
Keywords (search vol)~$0.50

For lead gen at 50 queries/day: ~$0.03–$0.08/day.

When to Use DataForSEO vs Serper

ScenarioUse
Quick test / low volumeSerper.dev (free tier)
High volume (500+ queries/day)DataForSEO (cheaper at scale)
Need Google Maps data (phone+website)DataForSEO Maps endpoint
Need keyword volume dataDataForSEO Keywords
Need backlink dataDataForSEO Backlinks
Just need organic results fastSerper.dev

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

75.01%
按下载量换算2,534

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills