📦 Search — 搜索
v1.0.0通过 Bright Data CLI 搜索网页——`bdata search` 获取 Google/Bing/Yandex SERP,`bdata discover` 获取按意图排序的语义结果。当用户……时使用。
运行时依赖
安装命令
点击复制技能文档
Bright Data — Search 在网上找东西。本技能含两条命令:
- bdata search — 经典关键词 SERP(Google/Bing/Yandex)。想知道“关键词 X 排什么”时用。
- bdata discover — AI 按意图排序的发现,可选带页面内容。想知道“关于主题 Y 且符合意图 Z 的页面”时用。
若需已知平台(Amazon、LinkedIn、TikTok…)的结构化数据,请改用 data-feeds。
Setup gate(首次必跑)
if ! command -v bdata >/dev/null 2>&1; then
echo "bdata CLI not installed — 见 bright-data-best-practices/references/cli-setup.md"
elif ! bdata zones >/dev/null 2>&1; then
echo "bdata 未认证 — 运行: bdata login(或 SSH 用: bdata login --device)"
fi
任一检查失败即停,并跳转至 skills/bright-data-best-practices/references/cli-setup.md。 Pick your path
| 场景 | 动作 |
|---|---|
| 单关键词查 SERP | bdata search "" --engine google --json --pretty |
| 分页 SERP(更多结果) | 循环 --page 0, --page 1…(0 起始) |
| 多关键词 | shell 循环读取查询文件 |
| 意图/语义(非关键词) | bdata discover "" --intent "" --num-results 20 |
| 同时拿页面正文 | bdata discover ... --include-content |
| 新闻/图片/购物 SERP | bdata search "" --type news(或 images、shopping) |
| 要 Amazon/LinkedIn/TikTok… 结构化数据 | 停 — 转交 data-feeds |
| 已有 URL 要内容 | 转交 scrape |
完整 flag 参考:references/flags.md# Google SERP,结构化 JSON bdata search "site:example.com privacy policy" --engine google --json --pretty# 本地化 Bing(德国结果,德语) bdata search "datenschutz" --engine bing --country de --language de --json
# 第二页结果(0 起始) bdata search "machine learning papers" --page 1 --json
# 移动 SERP bdata search "best coffee shops" --device mobile --json
# 新闻垂直 bdata search "openai" --type news --json --pretty
# 意图排序发现 bdata discover "enterprise LLM platforms" \ --intent "vendor pages with pricing" \ --num-results 15 --json
# 发现带 Markdown 正文 bdata discover "webhook best practices" \ --include-content --num-results 10 -o results.json
# 日期过滤发现 bdata discover "react server components" \ --start-date 2025-01-01 --end-date 2025-12-31 --num-results 20
search vs discover — 选对工具
| 需求 | 用 |
|---|---|
| “Google 给该关键词排什么” | search |
| “符合此意图的页面” | discover |
| “新闻/图片/购物垂直 SERP” | search --type |
| “结果+正文一次拿” | discover --include-content |
| “跨查询去重/语义排序” | discover |
- JSON 能解析:
jq .返回 0。 - 结果数组非空;为空则放宽查询重跑,并告知用户。
- 必要字段:
.organic[],含 title + link
- discover:结果在 .results[],含 title + link;若 --include-content 再加 content
- discover --include-content 内容字段不得出现封禁签名(同 scrape 列表,不区分大小写,且 body <2KB)。
- 地理合理性:若期望某国结果,检查 TLD/语言;错位时加
--country --language重跑。
Red flags
- 用 search 抓 Amazon、LinkedIn、TikTok 等,而 data-feeds 一次给干净数据。
- 盲目抓取所有 SERP 结果 — 先过滤(域名白名单、标题关键词、相关度)。
- 混淆 search(关键词)与 discover(语义)。
- 多查询不去重直接抓取。
- 以为 SERP 排序全球一致 — 实际受 geo+device 影响,务必显式设置。
- 把
--page当数量 — 它是页码,每页约 10 条。 - 以为 SERP 结果在
.results[]— search 的在.organic[]。 - discover 硬写
--num-results 100不知会轮询,可能很慢。
References
- references/flags.md — search & discover 全 flag 及用法备注
- references/patterns.md — 多查询去重、SERP→过滤→抓取流水线、search/discover 抉择、验证清单
- references/examples.md — 单 Google 查询、本地化 Bing、批量查询+去重、discover --include-content 端到端示例