核心用法
FlyClaw 是一款轻量级 Python CLI 工具,通过多源聚合架构(Google Flights、Skiplagged、FlightRadar24、ADSB.lol 等免费公开数据源)实现航班信息查询。支持航班号实时追踪(状态、延误、机型)与航线搜索(价格、时刻、经停)两大核心场景。
典型调用示例:
- 单航班查询:
flyclaw.py query --flight CA981 - 航线搜索:
flyclaw.py search --from 上海 --to 纽约 --date 2026-04-01 - 高级配置:支持往返搜索、多旅客(-a 2)、舱位选择(--cabin business)、经停过滤(--stops 0/1/2/any)、价格/时长排序
输入层支持中文城市名、英文名、IATA 代码三形态,内置 7912 机场数据库自动解析(如"上海"→PVG+SHA)。输出默认为 JSON 格式便于程序化集成,可切换 -o table 获取人类可读表格。
显著优点
1. 零 API Key 架构:无需注册、无账号体系、无密钥管理,开箱即用降低使用门槛
2. 多源互补策略:Google Flights(价格)、Skiplagged(低价中转)、FlightRadar24(实时状态)、ADSB.lol(实时位置)并发查询,单源失效不影响整体功能
3. 插件化扩展:每个数据源为独立模块,开发者可按规范接入新源
4. 隐私本地化:程序不收集、不存储用户个人信息,查询请求直连公开数据源
5. 轻量化实现:规避 Puppeteer/Selenium 等浏览器模拟方案,纯 HTTP 请求实现,资源占用低、响应快
潜在局限
1. 数据源不稳定风险:依赖免费公开接口,Google Flights 在部分地区存在访问限制,Skiplagged 等源可能因反爬策略变更而失效
2. 价格仅供参考:多源价格存在口径差异(含税/不含税、舱位映射规则不同),非实时出票价格,存在滞后性
3. 单日查询限制:search 命令单次仅支持一天,跨日期比价需外部并发调度
4. 国际网络依赖:部分数据源需稳定国际网络连接,国内用户可能需要代理配置
5. 非商业级 SLA:无服务等级协议,高峰时段可能出现限流或超时
适合人群
- 开发者/数据分析师:需要程序化获取航班数据用于分析、监控、比价系统原型
- 个人用户:追求零配置快速查询,对价格精度要求不敏感(如预估差旅预算)
- 隐私敏感用户:拒绝向第三方平台授权账号或提交个人信息
- 开源贡献者:希望基于插件架构扩展新数据源
常规风险
| 风险类型 | 说明 |
|---------|------|
| 数据准确性 | 价格、时刻、延误信息存在分钟级至小时级延迟,不构成订票依据 |
| 服务可用性 | 免费数据源随时可能变更接口或加入反爬,工具可能突然失效 |
| 法律合规 | 需遵守数据源所在地区法律及使用条款,禁止大规模爬虫行为 |
| 网络安全 | 依赖 `curl_cffi` 模拟浏览器指纹,存在被识别为自动化流量的可能 |
综合评价
FlyClaw 在"零配置航班查询"细分场景下具备独特价值——它牺牲了商业级稳定性和价格精度,换取了极致的轻量化与隐私友好。适合作为原型工具、个人速查或数据源聚合学习的参考实现,不建议直接用于生产环境的机票预订决策。