核心用法
flight-search 是一款命令行航班查询工具,通过封装 fast-flights 库实现对 Google Flights 的网页数据抓取。用户只需提供出发地、目的地机场代码(如 DEN、LAX)和日期,即可获取实时航班价格、起降时间、航司及中转信息。支持单程/往返查询、乘客数量设定、舱位等级筛选(经济舱至头等舱),并可输出纯文本或 JSON 格式便于脚本解析。安装方式灵活,既可通过 uvx 零安装直接运行,也能使用 uv tool install 全局安装。
显著优点
零配置即用:无需申请 API 密钥,省去繁琐的开发者注册流程,开箱即用。 轻量高效:基于 uv 工具链,启动速度快,依赖管理简洁。 输出友好:默认文本输出带 emoji 美化,JSON 输出结构化清晰,便于二次开发。 功能完整:覆盖舱位选择、乘客配置、往返日期等常见搜索场景,满足个人出行规划与自动化脚本需求。 开源透明:MIT 协议,代码完全可审计,无黑箱操作。
潜在缺点与局限性
依赖网页结构稳定性:作为非官方 API 的爬取方案,Google Flights 页面改版可能导致功能失效,存在维护风险。 T3 来源可信度:作者为个人开发者,非知名组织背书,长期维护承诺有限。 版本锁定宽松:依赖 fast-flights>=2.0 未严格锁定,可能因上游更新引入意外行为。 网络环境依赖:需访问 Google 服务,部分地区可能受限。 无企业级 SLA:不适合对可用性要求极高的生产环境。
适合的目标群体
- 需要快速查询航班信息的命令行用户与开发者
- 构建旅行自动化工作流(如价格监控、行程规划脚本)的技术人员
- 不愿申请 API 密钥、追求极简方案的独立开发者
- 学习 CLI 工具开发或数据爬取的初学者参考案例
使用风险
- 服务可用性风险:Google Flights 反爬策略或页面变更可能导致 401 错误,需关注项目更新
- 依赖漂移风险:fast-flights 版本未锁定,建议生产环境手动约束版本
- 数据时效性:爬取数据存在缓存延迟,非实时官方 API 级别精度
- 网络隐私:搜索参数发送至 Google,虽无敏感信息但行为可被追踪