技能使用指南

goplaces(谷歌地点查询CLI工具)Skill 是什么?如何下载安装使用?

goplaces 技能把新版 Google Places API 封装成命令行工具,支持关键词搜索、营业中与评分筛选、半径偏向、分页、地址解析、地点详情与评论查询,并可用 --json 输出结构化数据。本文详解安装配置、常用命令、竞品对比、典型场景与常见问题,帮开发者和效率工具用户快速上手,把地点查询变成可脚本化、可被 AI 调用的稳定能力。

谷歌地点查询CLI工具Skillgoplaces
10 个章节 约 16 分钟阅读 AI 智能生成

谷歌地点查询CLI工具Skill:一条命令查遍全球地点,让搜索与脚本都省心

  • 定位清晰:这是一个把新版 Google Places API 封装成命令行工具的 Skill,技能英文名 goplaces,技能ID 13588,输入一条命令即可完成地点搜索、地址解析、详情与评论查询。
  • 双形态输出:默认输出人类易读的彩色文本,加上 --json 立刻变成结构化数据,既适合人工查资料,也适合喂给脚本和自动化流程。
  • 筛选能力强:支持"当前营业"“最低评分”“价格等级”“距离半径”“类型过滤”"分页"等条件,一次命令缩小结果范围。
  • 安装门槛低:通过 Homebrew 一条命令安装,配置一个 GOOGLE_PLACES_API_KEY 环境变量即可使用。
  • 边界要说清:它本身不生成数据,数据来自 Google Places API(新版),因此需要自备 API Key,并遵守对应服务的使用条款,具体配额与计费以官方说明为准。

该技能叫什么?如何下载安装 AI 技能提升开发效率?

技能中文名:谷歌地点查询CLI工具Skill 技能英文名:goplaces 技能ID:13588

它解决的问题非常具体:当你需要"找一家附近还在营业、评分 4 分以上的咖啡馆",或者需要"把一批模糊地址转成可用的地点 ID 再拿详情与评论"时,通常要写一段调用 REST 接口的临时代码,处理鉴权、参数拼装、分页和结果解析。这个 Skill 把这些动作收敛成一条终端命令:goplaces search、goplaces resolve、goplaces details,默认给人类看的输出,加 --json 就给机器看的输出。

它属于"命令行型 AI 技能",即技能本身是一个可执行程序(bin 名 goplaces),AI 助手(或你自己)通过调用这条命令完成地点查询任务。因此它天然具备两个好处:一是可被 AI 编排进多步任务链,二是同样适合写进 shell 脚本与定时任务。

安装前提

  1. 一台可以运行 Homebrew 的机器(macOS 或 Linux 上安装了 Homebrew);
  2. 一个可用的 GOOGLE_PLACES_API_KEY(新版 Google Places API 的密钥),用于鉴权;
  3. 若技能平台侧提供"一键安装",则通常需要在技能列表中找到本技能(技能ID 13588)后点击安装,平台会按元数据中的 brew 配方执行,具体入口与按钮以官方说明为准。

安装步骤

第 1 步:安装可执行程序。技能元数据中给出的安装方式为 Homebrew 配方:

brew install steipete/tap/goplaces

第 2 步:配置 API Key。设置环境变量 GOOGLE_PLACES_API_KEY(写入 shell 配置文件如 ~/.zshrc、~/.bashrc 中可长期生效)。如果需要在测试环境或代理环境下使用,还可以可选地设置 GOOGLE_PLACES_BASE_URL。

第 3 步:验证是否生效。执行一次简单搜索,例如 goplaces search "咖啡" --limit 5。如果终端返回地点列表(名称、地址、评分等人类可读信息),说明安装与鉴权均正常;如果报鉴权错误,优先检查 API Key 是否已正确导出、是否在对应项目中启用了新版 Places API。

第 4 步(可选):验证 JSON 通道。执行 goplaces search "寿司" --json,确认输出为结构化 JSON,便于后续脚本处理。

小提示:如果终端颜色影响日志阅读,可使用 --no-color 或设置 NO_COLOR 环境变量禁用 ANSI 颜色。

该技能的主要功能和特点

  • 文本搜索(search):用自然语言关键词找地点,例如 goplaces search "咖啡" --open-now --min-rating 4 --limit 5,一次把"营业中""评分≥4""最多 5 条"三个条件叠加。
  • 地理偏向搜索:给出中心点与半径,让结果围绕某坐标聚拢,例如 goplaces search "披萨" --lat 40.8 --lng -73.9 --radius-m 3000,适合"我附近 3 公里内"式查询。
  • 分页遍历:通过 --page-token 继续翻页,例如 goplaces search "披萨" --page-token "NEXT_PAGE_TOKEN",便于批量采集候选地点。
  • 地址解析(resolve):把模糊的人类描述转成候选地点,例如 goplaces resolve "苏豪区,伦敦" --limit 5,是"从一句话到 place_id"的桥梁。
  • 地点详情(details):用 place_id 拿结构化详情,并可附带评论,例如 goplaces details <place_id> --reviews。
  • 双输出形态:默认人类可读格式适合即时查看,--json 适合脚本、管道与 AI 后续处理。
  • 价格等级语义明确:价格等级使用 0…4 的整数区间(免费 → 非常昂贵),便于按预算筛选。
  • 过滤行为有明确约定:类型过滤器只发送第一个 --type 值(因为 API 只接受一个类型),这一细节避免了"以为多类型同时生效"的误判。

和"打开地图网站手动搜"相比,它的差异在于可编程:结果能进入管道、能进数据库、能被 AI 直接读取;和"自己写 REST 调用"相比,它的差异在于省去样板代码:鉴权、参数、分页、输出格式都已经封装好。

如何使用该技能?

以下步骤覆盖最常见的使用路径,命令均可直接参考。

第 1 步:确认环境变量已就绪。 在终端中确认 GOOGLE_PLACES_API_KEY 已设置,通常可通过查看环境变量列表验证(不要将密钥明文写入代码仓库)。

第 2 步:先做一次宽泛搜索,建立候选集。 例如:

goplaces search "咖啡" --limit 10

输出为人可读的地点列表,先判断关键词是否命中你想要的品类。

第 3 步:叠加条件收窄结果。 例如只要现在营业、评分不低于 4 分的前 5 条:

goplaces search "咖啡" --open-now --min-rating 4 --limit 5

第 4 步:需要"附近"语义时,给出坐标与半径。 例如以纬度 40.8、经度 -73.9 为中心、半径 3000 米内找披萨:

goplaces search "披萨" --lat 40.8 --lng -73.9 --radius-m 3000

第 5 步:结果太多时翻页。 从上一次结果中获得下一页令牌,再执行:

goplaces search "披萨" --page-token "NEXT_PAGE_TOKEN"

第 6 步:把模糊地址转成 place_id。 例如想知道"苏豪区,伦敦"对应哪些地点:

goplaces resolve "苏豪区,伦敦" --limit 5

从返回结果中挑出目标条目,记下其 place_id。

第 7 步:用 place_id 取详情与评论。

goplaces details <place_id> --reviews

第 8 步:切换到机器可读模式。 在任意搜索命令后追加 --json:

goplaces search "寿司" --json

此时的输出可被 jq、Python、Node 等直接消费,或作为 AI 助手的下一步输入。

输入输出说明:输入由"关键词 + 可选过滤参数(营业状态、评分、坐标、半径、价格等级、类型、条数限制、分页令牌)"构成;输出在默认模式下为带颜色的人类可读列表,在 --json 模式下为结构化 JSON。价格等级用 0…4 表示,类型过滤只取第一个 --type 值,写命令时不要依赖多个类型同时生效。

同类型竞品对比分析

方案名称 定位 核心功能 安装/使用门槛 适用场景 优势与不足
goplaces(本技能) 新版 Google Places API 的命令行封装 文本搜索、偏向搜索、分页、地址解析、详情与评论、JSON 输出 需 Homebrew 安装 + 自备 GOOGLE_PLACES_API_KEY AI 编排的地点查询、脚本批处理、终端快速检索 优势:命令即用、双输出形态、过滤参数齐备;不足:依赖 Google Places API 账号与配额,功能面受上游 API 约束
直接调用 Google Places REST API 官方接口,最底层方案 与上游能力完全一致 需自行处理请求、鉴权、分页、错误重试 深度定制、需要官方全部字段 优势:最灵活、字段最全;不足:样板代码多,临时查询成本高
地图网页/手机 App 手动搜索 面向普通用户的图形界面 交互式搜索、地图浏览、评价查看 零安装门槛 一次性人工查询、出行导航 优势:直观、无需密钥;不足:不可脚本化、无法批量、结果难以进入数据流程
curl + jq 手搓脚本 通用 HTTP 工具组合 任意 HTTP 请求与 JSON 处理 工具普遍已装,但需自写请求逻辑 已有成熟的内部脚本体系 优势:无额外依赖;不足:每换一个接口都要重写参数与分页逻辑,维护成本随时间上升

从对比看,goplaces 的位置在"官方 REST API"和"图形界面"之间:比图形界面更可编程,比直接调 REST 更省事。当你的需求是"一次性人工查"时,网页更快;当需求是"每天跑一遍、结果入库、还要给 AI 用"时,这个 Skill 更合适。

该技能的典型应用场景与实际体验情况

场景一:本地生活内容编辑找选题。 内容编辑需要"某商圈内评分 4 分以上、当前营业的咖啡店"作为探店清单。她的痛点是:网页搜索逐条翻页、手动记录评分与营业状态,一个清单要花一小时。使用方式是先 goplaces search "咖啡" --open-now --min-rating 4 --limit 10 拿候选,再对感兴趣的条目取 details 补充评论信息。体验情况:上手难度低,第一次看帮助就能跑通;效果上"评分 + 营业中"两个条件把无效结果砍掉大半;注意事项是关键词要用目标地区的常用说法,否则命中率会下降。

场景二:数据分析师做区域密度观察。 分析师想粗略看某坐标附近某品类门店数量分布,痛点是手工地图打点无法量化。使用方式是固定 --lat、--lng、--radius-m 三参数反复执行搜索,配合 --page-token 翻页,再用 --json 输出结果进入表格。体验情况:--json 是关键,否则还要手工誊抄;建议先小半径试跑确认关键词命中,再放大半径,避免一次性拉取过多结果。

场景三:开发者把地点能力接进自动化流程。 开发者要在一个内部工具里做"输入模糊地址 → 返回标准地点信息"的功能,痛点是每次都要重写鉴权与解析逻辑。使用方式是先用 goplaces resolve "苏豪区,伦敦" --limit 5 把人类描述转成 place_id,再 goplaces details <place_id> --reviews 拉详情,全程 --json 便于解析。体验情况:命令语义清晰,管道友好;注意事项是 resolve 返回的是候选列表而非唯一答案,业务侧需要设计"如何选择"的规则(如取第一条或让用户确认)。

场景四:AI 助手执行多步任务。 用户对 AI 说"帮我找三家附近评分高的寿司店并给出评论要点",AI 需要可调用的确定性工具。使用方式是 AI 生成 goplaces search "寿司" --min-rating 4 --limit 3 --json,读取 JSON 后对每个 place_id 调 details --reviews 汇总。体验情况:相比让模型"凭记忆回答地点问题",命令行返回的是真实查询结果,可显著降低编造风险;注意事项是必须在提示或技能描述中明确"需要 API Key 与网络可用",否则失败时排查方向容易跑偏。

该技能能为用户带来的价值

其一,把"查地点"从交互操作变成可复用能力。 网页查询的成果停留在人脑和截图里,而命令行的成果是一条可以反复执行、可以写进脚本、可以被别人复现的命令。一次写对,长期可用。

其二,显著压缩临时开发成本。 若自行对接新版 Places API,鉴权、参数拼装、分页、错误处理、输出格式化这些"非业务但必须做"的代码往往占据大部分工时;本技能把这些收敛为一条安装命令加一个环境变量,让人把注意力放回业务本身。虽然具体节省的工时因团队而异,但"从写代码到写命令"的性质变化是确定的。

其三,为 AI 提供可靠的事实来源。 大模型对地点类问题容易给出过时或不存在的信息,而通过 goplaces 调用真实接口返回的结果具备可核验性。在需要"有据可查"的场景里,这一点的价值远超命令本身。

其四,降低团队内的分工门槛。 非工程角色(运营、编辑、分析)只要记住几条命令,就能自助完成地点数据收集,不必排队等开发排期;--json 又能保证他们产出的数据可以被工程侧直接消费,减少来回转换。

其五,长期看是"可组合"的基础设施。 搜索、解析、详情三类命令覆盖了地点数据的主要环节,配合管道与定时任务,可以逐步沉淀出团队自己的地点数据集与监控流程。

常见问题 FAQ

Q1:这个技能怎么安装?需要准备什么? A:安装方式是 Homebrew,执行 brew install steipete/tap/goplaces 即可获得 goplaces 可执行程序;随后必须配置环境变量 GOOGLE_PLACES_API_KEY。若技能平台提供一键安装入口(技能ID 13588),按平台提示操作即可,具体按钮与流程以官方说明为准。测试或代理环境可另行设置 GOOGLE_PLACES_BASE_URL。

Q2:它是免费的吗? A:技能本身是一个 CLI 封装,但底层查询走 Google Places API(新版),因此是否产生费用取决于你所用 Google 账号的 API 配额与计费政策,具体价格与配额以官方说明为准。建议先了解账户的调用额度,再用于批量任务。

Q3:安装完了但命令报错或没结果,先查什么? A:按顺序排查三件事:一是 GOOGLE_PLACES_API_KEY 是否已正确导出并对当前 shell 生效;二是对应项目是否已启用新版 Places API;三是搜索关键词与过滤条件是否过严(例如同时要求营业中 + 高评分 + 很小半径),可先去掉过滤参数,用 --limit 小批量试跑,确认基础链路通畅后再逐步叠加条件。

Q4:--type 能不能一次传多个类型? A:不能。技能说明中明确,类型过滤器只发送第一个 --type 值,因为该 API 只接受一个类型。如果需要多个类型的结果,请分多次执行命令再合并。

Q5:它和直接调 REST API、或直接用地图网页相比怎么选? A:一次性人工查看地点,用地图网页最快;需要官方全部字段、做深度定制,直接调 REST API 最灵活;而"要能用脚本重复执行、还要让 AI 稳定调用、又不想写样板代码"的中间地带,正是 goplaces 的最佳位置。价格等级 0…4、营业中、最低评分、半径、分页这些常用条件已经封装好,多数日常查询不必再回到原始接口。