← 返回
未分类 Key

高德地图(qq9349540)

当用户需要地理编码、POI搜索、路线规划(驾车/步行/骑行/公交)、坐标转换、天气预报、批量操作或数据导出时应使用此技能。支持高德地图 API 查询中国地理数据。
qq9349540
未分类 community v2.4.0 2 版本 100000 Key: 需要
★ 0
Stars
📥 455
下载
💾 98
安装
2
版本
#latest

概述

高德地图技能 v2.4.0 (Production Ready)

功能完整的 Windows 版高德地图命令行工具。经过四轮深度审查 + PowerShell Parser 零错误验证,已修复全部已知 Bug,达到生产可用状态。

> 双实现:Python 3.8+ (amap.py) + PowerShell 5.1+/7+ (amap.ps1),功能完全对齐。


📋 变更日志 (CHANGELOG)

v2.4.0 — 深度审查修复版 2026-04-11

类型数量说明
------------------
🔧 缺陷修复6navi URL / 骑行信息 / DRY重构 / clear-cache / export补齐 / config清理
🔒 编码修复1PowerShell UTF-8 BOM(PS5.1 中文兼容)

详细变更

  • [M-1] navi 导航链接统一:PowerShell 移除多余 from 参数 → 与 Python 一致(?to=坐标,名称&mode=car
  • [M-2] 骑行路线信息增强 (v5 API):新增红绿灯数(traffic_light_count)、路线步数(steps)字段输出
  • [M-3] 代码 DRY 重构
  • Python:抽取 _do_http_request() 统一 HTTP 核心,invoke_amap_request/invoke_amap_v5_request 改为薄包装
  • PowerShell:抽取 Invoke-AMapRequestCore() 统一核心,消除 ~90 行重复代码
  • [M-4] Shell 模式 clear-cache 对齐:PS Shell 模式现在也显示缓存条目数
  • [M-6] Python export 命令补全:argparse + Shell 模式新增 export 子命令(与 PS 完全对齐)
  • [M-8] Config 双写冗余清理:统一单 key 驼峰格式写入;新增 _config_get() 多 key 兼容读取辅助函数
  • [编码] amap.ps1 添加 UTF-8 BOM 头,解决 Windows PowerShell 5.1 解析中文报错问题

v2.3.0 — API 修复版 2026-04-11

类型数量说明
------------------
🔧 API 修复2骑行改用 v5 API / 公交改用 transit/integrated 端点
✨ 架构改进3base_url_v5 配置 / v5 请求函数 / 公交解析增强

详细变更

  • 骑行路线修复:v3 API 不再支持骑行 → 切换至 v5 API (/v5/direction/bicycling)
  • 公交路线修复:原端点缺少 city 参数 → 使用 /v3/direction/transit/integrated + 自动检测城市
  • ✅ 新增 base_url_v5 配置项,支持 v3/v5 动态切换
  • ✅ 新增 Invoke-AMapV5Request / invoke_amap_v5_request 函数
  • ✅ 增强公交路线解析:支持轨道交通信息

v2.2.0 — 第三轮审查补丁

类型数量
------------
🔧 Bug 修复9
🛡️ 健壮性增强5
✨ 新功能5

关键修复

  • 所有命令无数据时返回结构化错误 JSON(不再静默失败)
  • distance 字段 null 安全处理
  • 缓存 key 排序一致化(避免 hashtable 键序差异导致未命中)
  • API Key 短长度保护(短 key 不再崩溃)
  • Format-Output 中英文键名兼容(名称 vs Name
  • 分页循环变量防未初始化($result = $null
  • buslines 空数组越界保护(.Count -gt 0 校验)

关键新功能

  • POI 分页翻页-AllPages 自动获取全量结果
  • 结果 直接导出-OutputFile 保存 JSON 文件
  • 公交路线:transit 方式完整解析(换乘/费用/上下车站/轨道交通)
  • 缓存控制clear-cache 命令
  • Shell 补全:交互模式支持全部 17 个命令

v2.1.0 — 第二轮审查增强

健壮性全面增强、Export-Data 重构、坐标格式校验等。

v2.0.0 — 初始发布

全功能 CLI 工具:地理编码/逆编码/天气/IP定位/POI搜索/周边搜索/POI详情/路线规划(驾车+步行)/距离测量/导航链接/打车链接/批量地理编码/批量周边搜索/交互式Shell。


快速开始

1. 设置 API Key

# 方式1: 命令行设置(推荐,同时写入环境变量和配置文件)
amap set-amapkey "your-api-key"

# 方式2: 系统环境变量(Machine 级别,永久有效)
# [系统属性] → [环境变量] → [新建] → AMAP_API_KEY = your-key

# 方式3: 当前会话
$env:AMAP_API_KEY = "your-api-key"

2. 基本使用

# 地址转坐标
amap g "蚌埠市梅桥街道"

# 周边搜索 + 分页获取全部 + 保存到文件
amap a "超市" "117.3,33.0" 2000 -AllPages -OutputFile pois.json

# 公交路线规划
amap r "117.36,32.95" "117.38,32.94" transit -Simple

# 批量地理编码
amap bg "梅桥,联盟家博城,温莎" -Simple

命令列表

配置命令

命令说明示例
------------------------------------------------------------------------------------------------------
set-amapkey 设置API密钥(自动写入环境变量+配置文件)amap set-amapkey "xxx"
get-amapkey查看当前密钥(脱敏显示)amap get-amapkey
config查看当前配置amap config
config set 修改配置项amap config set defaultCity 合肥市
clear-cache清除请求缓存amap clear-cache
status运行状态(版本/请求数/缓存/API Key)amap status

可配置参数:

参数默认值说明
-------------------------------------
defaultCity蚌埠市默认搜索城市
defaultRadius1500默认搜索半径(米)
outputFormatjson默认输出格式

位置服务

命令别名参数说明示例
----------------------------------------------------------------------------
geo <地址> [城市]g-Simple地址→坐标amap g "蚌埠站"
regeo <坐标>rg-Simple坐标→地址amap rg "117.3,33.0"
weather [城市]w`-Format json\simple`天气预报amap w "蚌埠市"
ip [IP]--SimpleIP定位amap ip

搜索服务

命令别名参数说明示例
----------------------------------------------------------------------------------------------------------------
search <关键词> [城市]s-AllPages -OutputFile -FormatPOI关键字搜索amap s "餐厅" "蚌埠" -AllPages
around <关键词> <坐标> [半径]a-AllPages -OutputFile -Format周边POI搜索amap a "超市" "117.3,33.0" 1500
detail d-POI详情amap d "B001B0I4K0"

参数说明:

  • -AllPages: 自动分页获取全部结果(默认只返回第一页)
  • -OutputFile : 将结果保存为 JSON 文件
  • -Format: json(默认) / table / simple / detail

路线规划

命令别名方式说明示例
-----------------------------------------------------------------------------------------------------------------------------------
route <起点> <终点> [方式]rdriving / walking / bicycling / transit路线规划amap r "117.3,33.0" "117.4,33.1" transit
distance <起点> <终点>dist-Simple直线距离测量amap dist "117.3,33.0" "117.4,33.1"

> 支持 4 种出行方式:驾车(driving) / 步行(walking) / 骑行(bicycling, v5 API) / 公交(transit)

链接生成

命令别名说明示例
----------------------------------------------------------------------------------------------------
navi <坐标> <名称>n生成高德导航链接amap n "117.3,33.0" "目的地"
taxi <起点> <起名> <终点> <终名>t生成高德打车链接amap t "117.3,33.0" "家" "117.4,33.1" "公司"

> 坐标格式校验:无效坐标会报错提示而非生成无效链接

批量操作

命令别名说明示例
------------------------------------------------------------------------------------------------------------
batch-geo <地址1,地址2,...>bg批量地理编码(逗号分隔)amap bg "梅桥,联盟,温莎"
batch-around <关键词,...> <坐标> [半径]ba批量周边搜索(多类别)amap ba "餐饮,购物,银行" "117.3,33.0"

实用功能

命令说明
-------------------------------------------------------------------
export [data]导出数据到 .json.csv 文件
shell进入交互式 Shell(支持所有命令)

详细使用示例

场景1:光纤盒覆盖区域分析

# 1. 获取地址坐标
amap g "蚌埠市禹会区兰凤家园"

# 2. 分页获取周边全部 POI(超过25条时自动翻页)
amap a "超市" "117.389799,32.928052" 1500 -AllPages -OutputFile lanfeng_supermarket.json

# 3. 多类别批量分析
amap ba "餐饮,购物,银行,医院,学校,酒店" "117.389799,32.928052" 2000

场景2:路线与导航

# 驾车路线
amap r "117.36,32.95" "117.38,32.94" driving -Simple
# → 距离: 2.8公里 | 时长: 8分钟

# 骑行路线 (v5 API)
amap r "117.36,32.94" "117.40,32.92" bicycling
# → 距离/时长/红绿灯数/路线步数

# 公交路线
amap r "117.36,32.95" "117.38,32.94" transit
# → 总时长、总费用、换乘次数、每段公交详情

# 生成导航链接
amap n "117.389799,32.928052" "兰凤家园"

# 步行路线
amap r "117.36,32.95" "117.38,32.94" walking -Simple

场景3:交互式使用

amap shell
# amap> geo "蚌埠南站"
# amap> rg "117.35,32.92"
# amap> w
# amap> clear-cache
# amap> exit

输出格式

# JSON(默认,完整结构化数据)
amap s "餐厅" "蚌埠"

# 表格(简洁表格视图)
amap a "超市" "117.3,33.0" 1000 -Format table

# 简洁(仅名称列表)
amap s "酒店" -Format simple

# 详情(逐条展示所有字段)
amap d "B001B0I4K0" -Format detail

参数规范

参数格式说明示例
-------------------------------------------------------------------------------
坐标经度,纬度(经度在前,小数精度≥2位)117.362,32.948
半径米(正整数)1000, 1500, 2000
路线方式driving / walking / bicycling / transit-
地址分隔符逗号或中文逗号或分号"A,B,C""A,B,C"

故障排查

问题1:API Key 无法读取

AMAP_API_KEY 未设置。请运行: amap set-amapkey <your-key>

解决

  • 确认已在系统环境变量中设置了 AMAP_API_KEY(注意是 Machine 级别)
  • 设置后需要重新打开终端窗口才能生效
  • 或直接运行 amap set-amapkey "你的key"

问题2:10003 访问超频

原因:高德 API 有并发/配额限制

解决

  • 批量操作已内置 100ms 延迟,避免超频
  • 如仍超频,可增大延迟或降低并发
  • 检查高德控制台的配额用量

问题3:坐标格式报错

坐标格式无效,应为: 经度,纬度 (如: 117.3,33.0)

解决:确保使用 经度,纬度 格式,用英文逗号分隔,且包含小数点

问题4:天气/POI 查询返回空

  • 确认城市名称正确(建议带省市前缀如"安徽省蚌埠市")
  • 使用 amap config set defaultCity 蚌埠市 设置默认城市

获取 API Key

👉 https://console.amap.com/dev/key/app

> 选择 「Web服务」 类型(不是 Web端/Android/iOS)

注意事项

  1. API Key 需要 Web服务 权限
  2. 高德免费额度:30万次/日(基础);超频返回 10003 错误
  3. 仅支持中国境内地理数据
  4. POI 单页最多 25 条,使用 -AllPages 可自动翻页
  5. 坐标系:GCJ02(火星坐标系),与 GPS/WGS84 有偏移
  6. 双实现 (Python + PowerShell) 功能完全对齐,可按需选择使用

版本历史

共 2 个版本

  • v2.4.0 📋 变更日志 (CHANGELOG) v2.4.0 — 深度审查修复版 2026-04-11 类型 数量 说明 🔧 缺陷修复 6 navi URL / 骑行信息 / DRY重构 / clear-cache / export补齐 / config清理 🔒 编码修复 1 PowerShell UTF-8 BOM(PS5.1 中文兼容) 详细变更 ✅ [M-1] navi 导航链接统一:PowerShell 移除多余 from 参数 → 与 Python 一致(?to=坐标,名称&mode=car) ✅ [M-2] 骑行路线信息增强 (v5 API):新增红绿灯数(traffic_light_count)、路线步数(steps)字段输出 ✅ [M-3] 代码 DRY 重构: Python:抽取 _do_http_request() 统一 HTTP 核心,invoke_amap_request/invoke_amap_v5_request 改为薄包装 PowerShell:抽取 Invoke-AMapRequestCore() 统一核心,消除 ~90 行重复代码 ✅ [M-4] Shell 模式 clear-cache 对齐:PS Shell 模式现在也显示缓存条目数 ✅ [M-6] Python export 命令补全:argparse + Shell 模式新增 export 子命令(与 PS 完全对齐) ✅ [M-8] Config 双写冗余清理:统一单 key 驼峰格式写入;新增 _config_get() 多 key 兼容读取辅助函数 ✅ [编码] amap.ps1 添加 UTF-8 BOM 头,解决 Windows PowerShell 5.1 解析中文报错问题 v2.3.0 — API 修复版 2026-04-11 类型 数量 说明 🔧 API 修复 2 骑行改用 v5 API / 公交改用 transit/integrated 端点 ✨ 架构改进 3 base_url_v5 配置 / v5 请求函数 / 公交解析增强 详细变更 ✅ 骑行路线修复:v3 API 不再支持骑行 → 切换至 v5 API (/v5/direction/bicycling) ✅ 公交路线修复:原端点缺少 city 参数 → 使用 /v3/direction/transit/integrated + 自动检测城市 ✅ 新增 base_url_v5 配置项,支持 v3/v5 动态切换 ✅ 新增 Invoke-AMapV5Request / invoke_amap_v5_request 函数 ✅ 增强公交路线解析:支持轨道交通信息 当前
    2026-04-11 14:05 安全 安全
  • v2.2.0 版本历史 v2.1 → v2.2 (前两轮审查) v2.2 补丁 (第三轮审查) 🔧 Bug 修复 (6项) ✅ Get-GeoCode / Get-ReGeoCode / Get-Weather / Get-POIDetail / Get-Distance / Get-Route: 所有命令在无数据时均返回结构化错误 JSON(不再静默失败) ✅ Search-Around / Search-POI: distance 字段 null 安全处理 ✅ 缓存 key 一致性:改用排序后的 queryString(避免 hashtable 键序不同导致缓存未命中) 🛡️ 健壮性增强 (5项) ✅ Set-APIKey / Show-Config / get-amapkey / Show-Status: API Key 显示时长度保护(短 key 不再崩溃) ✅ Export-Data 重构:支持对象/字符串输入、自动创建目录、健壮的 CSV 属性收集 ✅ New-NavigationLink / New-TaxiLink: 坐标格式校验(无效坐标不再生成错误链接) ✅ Enter-InteractiveShell: 全部 17 个命令补齐 + 参数不足时的友好用法提示 ✨ 新功能 (5项) ✅ POI 分页: search / around 支持 -AllPages 自动翻页获取全量数据 ✅ 结果导出: search / around 支持 -OutputFile <path> 直接保存 JSON ✅ 公交路线: route transit 解析换乘次数、步行距离、费用、上下车站 ✅ 缓存控制: clear-cache 命令清除请求缓存 ✅ Shell 补全: 交互模式支持所有命令 (detail/route/distance/navi/taxi/batch-* 等) 🔧 第三轮审查修复 (3项) ✅ Format-Output simple/detail 模式:兼容中文键名(名称 vs Name),修复 POI 搜索结果在 simple/detail 格式下输出为空的问题 ✅ 分页循环变量初始化:Search-POI / Search-Around 的分页 while 循环前增加 $result = $null 初始化,防止 API 首次请求异常时引用未赋值变量 ✅ 公交路线 buslines 空数组保护:Get-Route transit 解析中增加 .Count -gt 0 校验,防止空 buslines 数组导致越界访问
    2026-04-10 19:21 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

data-analysis

Data Analysis

ivangdavila
{"answer":"数据分析与可视化。查询数据库、生成报告、自动化电子表格,将原始数据转化为清晰可行的见解。适用于:(1) 您……"}
★ 211 📥 69,736
data-analysis

Tavily 搜索

jacky1n7
通过 Tavily API 进行网页搜索(Brave 替代方案)。当用户要求搜索网页、查找来源或链接,且 Brave 网页搜索不可用时使用。
★ 273 📥 100,765
data-analysis

AdMapix

fly0pants
AdMapix 原始数据层,提供广告创意、应用、排名、下载/收入及市场元数据。返回 AdMapix API 的结构化 JSON;调用方...
★ 297 📥 141,750