名称: amadeus-hotels
描述: 通过 Amadeus API 搜索酒店价格与空房情况。可按城市、坐标或设施查找度假酒店。支持比价、查看评分、获取报价详情,并可设置价格提醒进行追踪。适用于用户询问“查找酒店”、“搜索[城市]酒店”、“酒店价格”、“度假住宿”、“酒店优惠”、“追踪酒店价格”等场景。
主页: https://github.com/kesslerio/amadeus-hotels-clawhub-skill
元数据:
{
"openclaw":
{
"emoji": "🏨",
"requires":
{
"bins": ["python3"],
"env": ["AMADEUS_API_KEY", "AMADEUS_API_SECRET"],
},
"primaryEnv": "AMADEUS_API_KEY",
"install":
[
{
"id": "pip-requests",
"kind": "pip",
"packages": ["requests"],
"label": "安装 requests (pip)",
},
],
},
}
通过 Amadeus 自助服务 API 搜索酒店价格、空房情况和评分。是规划假期和寻找优惠的理想工具。
获取 API 凭证:访问 https://developers.amadeus.com/self-service
设置环境变量:
bash
export AMADEUS_API_KEY="你的-api-key"
export AMADEUS_API_SECRET="你的-api-secret"
export AMADEUS_ENV="test" # 或 "production" 用于真实预订
安装依赖:
bash
pip install requests
免费额度: 测试环境每月约 2,000 次请求,生产环境按使用量付费。
| 任务 | 脚本 | 示例 |
|---|---|---|
| 按城市搜索 | scripts/search.py |
--city PAR --checkin 2026-03-15 --checkout 2026-03-20 |
| 获取报价 | scripts/offers.py |
--hotels HTPAR123,HTPAR456 --adults 2 |
| 报价详情 | scripts/details.py |
--offer-id ABC123 |
| 价格追踪 | scripts/track.py |
--add --hotel HTPAR123 --target 150 |
| 检查追踪 | scripts/track.py |
--check |
通过城市代码(IATA)或坐标查找酒店:
# 按城市
python3 <技能目录>/scripts/search.py --city PAR --checkin 2026-03-15 --checkout 2026-03-20
# 按坐标(地标附近)
python3 <技能目录>/scripts/search.py --lat 48.8584 --lon 2.2945 --radius 5 --checkin 2026-03-15 --checkout 2026-03-20
# 使用筛选条件
python3 <技能目录>/scripts/search.py --city NYC --amenities WIFI,POOL,SPA --ratings 4,5
常用城市代码: PAR (巴黎), NYC (纽约), TYO (东京), BCN (巴塞罗那), LON (伦敦), LAX (洛杉矶), SFO (旧金山)
从搜索结果获得酒店 ID 后:
python3 <技能目录>/scripts/offers.py \
--hotels HTPAR001,HTPAR002 \
--checkin 2026-03-15 \
--checkout 2026-03-20 \
--adults 2 \
--rooms 1
返回:房型、价格、取消政策、餐食类型。
在预订前获取特定报价的完整详情:
python3 <技能目录>/scripts/details.py --offer-id <从搜索获得的报价ID>
返回:详细的房间信息、完整的取消政策、付款条款、酒店联系方式。
获取汇总的评价情感分析:
python3 <技能目录>/scripts/details.py --hotel-id HTPAR001 --ratings
返回:总体评分 (0-100)、分类评分(员工、位置、WiFi、清洁度等)。
追踪酒店价格,并在价格下降时获得提醒:
# 添加酒店到追踪列表
python3 <技能目录>/scripts/track.py --add \
--hotel HTPAR001 \
--checkin 2026-03-15 \
--checkout 2026-03-20 \
--adults 2 \
--target 150 # 当价格低于 150 美元/晚时提醒
# 检查所有被追踪的酒店(可通过 cron 定时运行)
python3 <技能目录>/scripts/track.py --check
# 列出被追踪的酒店
python3 <技能目录>/scripts/track.py --list
# 从追踪列表中移除
python3 <技能目录>/scripts/track.py --remove --hotel HTPAR001
添加到 OpenClaw 的 cron 配置中,实现自动价格监控:
# 每天两次检查酒店价格
- schedule: "0 9,18 * * *"
task: "运行酒店价格追踪器并在降价时提醒"
command: "python3 <技能目录>/scripts/track.py --check"
当价格低于目标值时,脚本会输出提醒文本。请在 cron 任务中配置您的通知渠道。
脚本默认输出 JSON。添加 --format human 参数可获得更易读的输出:
python3 <技能目录>/scripts/search.py --city PAR --format human
易读格式示例:
🏨 Hotel & Spa Paris Marais ★★★★
📍 15 Rue du Temple, Paris
💰 €189/晚 (原价 €220)
✨ WIFI, SPA, RESTAURANT
📊 评分: 87/100 (员工: 92, 位置: 95)
--amenities 参数常用的筛选代码:
| 代码 | 含义 |
|---|---|
| WIFI | 免费 WiFi |
| POOL | 游泳池 |
| SPA | Spa/健康中心 |
| GYM | 健身中心 |
| RESTAURANT | 内部餐厅 |
| PARKING | 提供停车位 |
| PETS_ALLOWED | 允许携带宠物 |
| AIR_CONDITIONING | 空调 |
| KITCHEN | 厨房/小厨房 |
完整列表见 references/amenities.md。
Amadeus API 返回的价格并非零售价。 API 返回的是协商价、净价或批发价——而不是您在 Booking.com、Expedia 或酒店官网上看到的公开价格。
主要区别:
* 净价 vs 零售价: API 返回“净价”(原始成本),而非加价后的零售价。
* B2B 定价: 专为旅行社/开发者设计,以便他们自行加价。
* 协商价格: 可能包含普通消费者无法获得的公司协议价或联盟价。
* 税费明细: 价格通常单独显示基础价和税费。
请将这些价格用于比较和追踪趋势,而非作为确切的零售报价。 消费者网站上的实际预订价格会有所不同。
| 错误 | 含义 | 操作 |
|---|---|---|
| 401 | 认证失败 | 检查 API 密钥/密钥 |
| 429 | 超出速率限制 | 等待后重试(已自动处理) |
| 400 | 请求错误 | 检查参数(日期、代码) |
| 无结果 | 无空房 | 尝试不同日期或扩大搜索范围 |
references/amenities.md — 完整的设施代码列表