五源航班聚合查询 — 零登录、零账号、零 API Key,轻量 Python 实现。 5-source flight aggregation — zero login, zero account, zero API key. Lightweight Python, no browser automation.
基于多源聚合架构,通过开源库及免费公开 API 获取航班动态、价格、时刻、实时位置等信息。支持中英文城市名和 IATA 代码输入。
Multi-source aggregation via open-source libraries and free public APIs for flight dynamics, prices, schedules, and real-time positions. Supports Chinese/English city names and IATA codes.
GitHub: https://github.com/AI4MSE/FlyClaw
无需注册任何账号或提供任何 API Key 即可使用全部核心功能。用户本地化掌控所有,程序不收集、不存储任何用户个人信息。同时规避浏览器模拟等复杂、不可靠和低效问题。
No registration or API key required. All data stays local — no personal data collected or stored. No browser automation overhead.
用户说"查航班 CA981"、"上海飞纽约多少钱"、"PVG 到 JFK 明天的航班"、"往返机票 上海到新加坡"、"商务舱 北京到伦敦"、"所有航班包括转机"、"直飞" 等即可自动执行。默认查询行为是直飞+经济舱。
Trigger when user says "query flight CA981", "flights from Shanghai to New York", "round-trip PVG to SIN", "business class Beijing to London", "nonstop flights", "all flights including connecting", etc. Default behavior is nonstop + economy.
智能转换规则 / Smart Conversion Rules:
--stops any--stops 0(默认)--stops 1--stops 2多源并发查询,智能合并互补。 插件式架构,支持无限扩展——每个数据源为独立模块。特别感谢以上公开数据源为公益和大众需求提供的便利!
默认输出为 JSON(stdout),直接 json.loads() 即可解析,示例:
json
[{"flight_number": "CA981", "price": 472.0, "origin_iata": "PVG", "destination_iata": "GVA", ...}]
无结果时返回 []。错误和日志仅输出到 stderr,不影响 JSON 解析。 价格默认为人民币(CNY),每条记录含 currency 字段标注货币。可用 --currency usd 统一转换为美元,或 --currency cny(默认)。汇率可在 config.yaml 中配置(默认 7.25)。可用 -o table 切换为人类可读表格。
多日查询:search 命令每次只查一天。查询一周最低价等场景,需拆成多个日期 并发执行,分别获取 JSON 结果后自行合并比较。
bash
python flyclaw.py query --flight CA981
bash
python flyclaw.py search --from 上海 --to 纽约 --date 2026-04-01
bash
python flyclaw.py search --from PVG --to LAX --date 2026-04-15 --return 2026-04-25
bash
python flyclaw.py search --from PVG --to JFK --date 2026-04-15 --cabin business -a 2
bash
python flyclaw.py search --from PVG --to SIN --date 2026-04-15 --stops 0 --sort cheapest
bash
python flyclaw.py search --from PVG --to JFK --date 2026-04-15 --stops any
bash
python flyclaw.py query --flight CA981 --date 2026-04-01
python flyclaw.py query --flight CA981 --date today
默认启用智能查价,会自动在航班号查询时补充价格信息。关闭后可节约查询时间。
bash
python flyclaw.py query --flight CA981 --no-relay
参数短标志默认值说明--from—(必填)出发地--to—(必填)目的地--date / -d——出行日期 YYYY-MM-DD--return / -r——返程日期(启用往返搜索)--adults / -a—1成人旅客数--children—0儿童旅客数--infants—0婴儿旅客数--cabin / -C—economyeconomy/premium/business/first--limit / -l—不限制最大结果数(不指定则返回全部)--sort / -s——cheapest/fastest/departure/arrival--stops—0经停:0=直飞/1/2/any=不限
-o table:表格格式输出(默认为 JSON)-v:详细模式,显示数据来源和舱位用户说解析为说明"上海"PVG + SHA城市级:搜索所有上海机场"PVG"PVG精确到浦东机场"浦东"PVG别名精确匹配"纽约"JFK + EWR + LGA城市级:搜索所有纽约机场"北京"PEK + PKX + NAY城市级:搜索所有北京机场"Shanghai"PVG + SHA英文城市名同样支持
bash
pip install requests pyyaml curl_cffi flights
# 注意:不要安装 mcp、fast-flights、playwright 等调试模块,会增加安装时间且普通使用不需要
文件位置:主程序 flyclaw.py,配置 config.yaml,机场缓存 cache/airports.json。
依赖:Python 3.11+、 requests(Apache-2.0)、 pyyaml(MIT)、 curl_cffi(MIT)、 flights(MIT)。
公益技能,免费开源。 / Community-driven, open-source, free for everyone.
许可证 / License: Apache-2.0