关于 google-flights
google-flights 为旅行应用和助手提供结构化的 Google Flights 搜索结果,支持单程、往返和多城市行程,并可筛选航班、查看价格信息及获取可选预订链接。
主要功能
- 01搜索单程、往返和多城市航班
- 02按价格、中转次数、航空公司和乘客筛选
- 03返回航段、时刻和机场详情
- 04提供当前价格水平及历史区间
- 05可选解析航空公司和 OTA 预订链接
适用场景
- 01比较计划路线的机票价格
- 02按中转次数和价格限制查找航班
- 03选日期前查看价格趋势
- 04获取单程航班的预订链接
MCP 相关
托管的 Apify MCP 端点将此 Google Flights Actor 作为工具提供给 MCP 客户端,可执行航班搜索,并可选返回直接预订链接。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Searchclaude mcp add --transport http johnisanerd-google-flights https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search{"mcpServers":{"johnisanerd-google-flights":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"}}}在 Cursor 中打开{"servers":{"johnisanerd-google-flights":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"}}}在 VS Code 中打开{"mcpServers":{"johnisanerd-google-flights":{"type":"http","url":"https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"}}}{"mcpServers":{"johnisanerd-google-flights":{"serverUrl":"https://mcp.apify.com/?tools=johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
✈️ Google Flights API:以整洁的 JSON 搜索航班和价格
使用 Google Flights API 的高效、可靠且对开发者友好的方式。
Actor 页面: apify.com/johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search 输入架构: apify.com/johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search/input-schema
Google Flights API 可搜索航班并返回整洁、结构化的 JSON。每页结果均包含首选推荐航班及备选航班、完整的航段和时间信息、价格、价格洞察(价格水平和历史区间)、机场详情以及搜索元数据。它支持单程、往返和多城市行程,可设置一个或多个机场,并提供价格、经停次数、航空公司和乘客人数筛选,还可选择解析航空公司和 OTA 的直达预订链接。支持 29+ 种语言和 39+ 个国家/地区的本地化。
视频演示
快速开始
前提条件
- Python 3.11 或更高版本
- Apify 账户和 API 密钥(在此免费获取密钥)
-
克隆代码仓库
git clone https://github.com/johnisanerd/Apify-Google-Flights-API.git cd Apify-Google-Flights-API -
使用 UV 安装依赖项
# Install UV if you do not have it: curl -LsSf https://astral.sh/uv/install.sh | sh # Install project dependencies: uv sync -
配置 API 密钥
cp .env.example .env # Edit .env and add your Apify API key # Get your free API key at: https://apify.com?fpr=9n7kx3 -
运行示例
uv run python google-flights-api.py
此代码仓库还包含 google-flights-get-booking-options.py,这是一个低成本的单程示例(BOS 至 PQI),启用 fetch_booking_options 后即可解析航空公司和 OTA 的直达预订链接:
uv run python google-flights-get-booking-options.py
替代方案:直接设置 API 密钥
export APIFY_API_TOKEN="your_api_key_here"
uv run python google-flights-api.py
为什么使用这个 Google Flights API?
完整行程。 搜索单程、往返和多城市行程,支持单个或多个出发机场和到达机场,并获取首选推荐航班及备选航班的完整分航段详情。
直达预订链接。 启用 fetch_booking_options 后,每个航班都会解析出航空公司或 OTA 网站上的实时预订链接,包含票价等级和行李费用,可直接嵌入应用。
强大的筛选功能。 可按最高价格、最多经停次数、首选航空公司和乘客人数进行筛选,也可排除基础经济舱。
价格信息。 每次搜索都会返回价格洞察:当前价格水平(低、一般或高)以及该航线的历史价格区间。
价格可预测,按使用量付费。 按处理的页面计费,只有在请求解析预订链接时才按链接计费。无需订阅。可通过页面数量上限控制成本。
易于自动化。 只需几行 Python 代码即可调用,也可以将其加载为 MCP 工具,让 Claude 和 Cursor 等助手按需搜索航班。
功能
核心能力
- 单程、往返和多城市行程
- 每个航段支持单个或多个机场(例如
CDG,ORY) - 支持按价格、经停次数、航空公司、乘客人数和基础经济舱进行筛选
- 可选的直达预订链接(航空公司/OTA URL、票价等级、行李费用)
- 支持 29+ 种语言和 39+ 个国家/地区的本地化
数据质量
- 首选和备选航班,包含完整的航段时间、航空公司和时长
- 包含价格水平和历史区间的价格洞察
- 出发和到达机场详情
- 返回每页元数据和搜索参数
- 每次查询的 JSON 结构一致
使用示例
单程搜索示例
{
"departure_id": "LAX",
"arrival_id": "JFK",
"outbound_date": "2026-10-12",
"adults": 1,
"currency": "USD",
"max_pages": 1
}
带筛选条件的往返搜索
{
"departure_id": "JFK",
"arrival_id": "LHR",
"outbound_date": "2026-11-25",
"return_date": "2026-12-02",
"adults": 2,
"max_price": 1500,
"max_stops": 1,
"max_pages": 2
}
多城市行程
{
"multi_city_json": "[{\"departure_id\":\"CDG\",\"arrival_id\":\"NRT\",\"date\":\"2026-11-17\"},{\"departure_id\":\"NRT\",\"arrival_id\":\"LAX\",\"date\":\"2026-11-24\"}]",
"adults": 1,
"currency": "USD",
"max_pages": 1
}
直达预订链接
{
"departure_id": "LAX",
"arrival_id": "JFK",
"outbound_date": "2026-10-12",
"adults": 1,
"fetch_booking_options": true,
"max_pages": 1
}
注意:fetch_booking_options 适用于单程搜索,按解析出的链接计费,并且需要 Actor 内存达到 512 MB 或更高(它会使用无头浏览器)。
输入参数
必须提供 departure_id + arrival_id + outbound_date,或 multi_city_json。
| 参数 | 类型 | 必填 | 默认值 | 描述 |
|---|---|---|---|---|
departure_id | string | 是* | - | 出发机场代码,多个代码用逗号分隔(例如 LAX、CDG,ORY)。 |
arrival_id | string | 是* | - | 到达机场代码,多个代码用逗号分隔。 |
outbound_date | string | 是* | - | 出发日期,格式为 YYYY-MM-DD。 |
return_date | string | 否 | (无) | 往返行程的返程日期,格式为 YYYY-MM-DD。 |
multi_city_json | string | 是* | - | 多城市行程各航段的 JSON 字符串。用于替代上述三个字段。 |
adults | integer | 否 | 1 | 成人乘客(至少 1 人)。 |
children | integer | 否 | 0 | 儿童乘客。 |
infants | integer | 否 | 0 | 婴儿乘客。 |
currency | string | 否 | USD | 货币代码,例如 USD、EUR、GBP。 |
hl | string | 否 | en | 语言代码(支持 29 种以上)。 |
gl | string | 否 | us | 国家代码(支持 39 种以上)。 |
max_price | integer | 否 | (无) | 所选货币的最高价格筛选值。 |
max_stops | integer | 否 | (无) | 最多中转次数(0 = 仅限直飞)。 |
airlines | string | 否 | (无) | 首选航空公司代码,以逗号分隔,例如 UA,AA,DL。 |
exclude_basic | boolean | 否 | false | 排除基础经济舱票价。 |
fetch_booking_options | boolean | 否 | false | 解析直订链接(仅限单程;按链接计费;需要 512 MB 以上内存)。 |
max_pages | integer | 否 | 1 | 要获取的最大页数(0 = 不限)。 |
output_file | string | 否 | (无) | 用于保存结果的可选文件名。 |
输出格式
LAX 到 JFK 的真实结果(每页一项;此处为便于阅读,已截短 best_flights 航段和 price_insights 历史记录)。
{
"search_parameters": {
"trip_type_description": "One-way",
"departure_id": "LAX",
"arrival_id": "JFK",
"outbound_date": "2026-10-12",
"adults": 1,
"currency": "USD",
"language": "en",
"country": "us"
},
"search_metadata": {
"total_flights_found": 29,
"best_flights_count": 3,
"other_flights_count": 26,
"pages_processed": 1,
"pagination_limit_reached": true,
"booking_options_count": 0
},
"page_number": 1,
"best_flights": [
{
"price": 207,
"type": "One way",
"total_duration": 590,
"flights": [
{
"departure_airport": { "name": "Los Angeles International Airport", "id": "LAX", "time": "2026-10-12 09:24" },
"arrival_airport": { "name": "Charlotte Douglas International Airport", "id": "CLT", "time": "2026-10-12 17:28" },
"airline": "American",
"flight_number": "AA 2570",
"travel_class": "Economy",
"duration": 304
},
{
"departure_airport": { "name": "Charlotte Douglas International Airport", "id": "CLT", "time": "2026-10-12 20:11" },
"arrival_airport": { "name": "John F. Kennedy International Airport", "id": "JFK", "time": "2026-10-12 22:14" },
"airline": "American",
"flight_number": "AA 1727",
"travel_class": "Economy",
"duration": 123
}
]
}
],
"other_flights": [],
"price_insights": {
"lowest_price": 207,
"price_level": "typical",
"typical_price_range": [145, 255]
},
"airports": [
{
"departure": [
{ "airport": { "id": "LAX", "name": "Los Angeles International Airport" }, "city": "Los Angeles", "country": "United States" }
],
"arrival": [
{ "airport": { "id": "JFK", "name": "John F. Kennedy International Airport" }, "city": "New York", "country": "United States" }
]
}
],
"booking_options": []
}
当 fetch_booking_options 为 true 时,每个 booking_options 条目都会包含解析后的航空公司或 OTA 的 booking_url,以及票价类别和行李详情。
用作 MCP 工具
你可以将 Google Flights API 加载为 MCP 工具,让助手代你调用。MCP 服务 URL 已预加载且仅包含此 Actor:
https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search
出现提示时,可在浏览器中使用 OAuth 进行身份验证,也可以使用 Apify API 令牌(与 Python 示例中使用的 APIFY_API_TOKEN 相同)。请访问 https://console.apify.com/settings/integrations 获取令牌,并访问 https://apify.com?fpr=9n7kx3 注册免费的 Apify 账户。
在 Claude Cowork Desktop 中安装

Cowork 是桌面应用的自动化模式。若要将 Google Flights API 作为工具提供给它,请添加 Apify MCP 服务作为连接器。
- 打开 Claude 桌面应用,然后前往 Settings → Connectors(或前往 Settings → Developer → Edit Config,直接编辑
claude_desktop_config.json)。- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- 添加 Apify MCP 服务,并预加载且仅包含此 Actor:
{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"
]
}
}
}
- 重启应用。Cowork 首次调用该工具时,请在浏览器中完成 OAuth 提示,或在连接器设置中添加 Apify API 令牌以跳过 OAuth。
- 在 Cowork 聊天中,确认该工具可用,然后让它运行 Google Flights API。
下载桌面应用并开始免费试用:https://claude.ai/referral/uIlpa7nPLg 获取更多帮助:https://docs.apify.com/platform/integrations/claude-desktop
在 Claude Code 中安装

Claude Code 是命令行工具。使用一条命令添加 Actor 的 MCP 服务:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"
如需使用令牌而非浏览器 OAuth:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search" \
--header "Authorization: Bearer YOUR_APIFY_TOKEN"
然后使用 claude mcp list 验证,或在会话中运行 /mcp。让 Claude Code 调用 Google Flights API。
免费试用 Claude Code:https://claude.ai/referral/uIlpa7nPLg Claude Code MCP 文档:https://code.claude.com/docs/en/mcp
在 Claude(网站)中安装

在 claude.ai 上,将 Apify 添加为连接器,然后仅启用此 Actor 的工具。
- 前往 Settings → Connectors → Browse connectors,搜索 Apify MCP server。安装它(如收到提示,则启用或更新)。
- 连接时,使用 Apify API 令牌进行身份验证,并启用工具
johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search。 - 在任意聊天中,打开 + → Connectors 并启用 Apify。
- 或者,选择 Add custom connector 并粘贴完整的 MCP URL
https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search,并在提示时使用 OAuth。 - 让 Claude 运行 Google Flights API。
在网页上打开 Claude:https://claude.ai/referral/uIlpa7nPLg
在 Cursor 中安装

Cursor 从项目文件 .cursor/mcp.json 中读取 MCP 服务。
- 在项目中创建
.cursor/mcp.json:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search"
}
}
}
- 如果希望使用令牌身份验证而非浏览器 OAuth,请添加一个标头:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}
- 打开 Cursor → Settings → MCP,确认 apify 服务已连接(绿色圆点)。
- 在 Composer 或 Chat 中,让 Cursor 调用 Google Flights API。
刚开始使用 Cursor?在此获取:https://cursor.com/referral?code=XQP4VBLI3NNX
在 ChatGPT 中安装

ChatGPT 通过开发者模式连接到 Apify MCP 服务(适用于 ChatGPT Pro、Plus、Business、Enterprise 和 Education 套餐)。
- 点击个人资料图标,然后前往 Settings > Apps。如果看不到 Create app 按钮,请打开 Advanced settings 并启用 Developer mode。
- 点击 Create app 并填写表单:
- 名称: Apify
- MCP 服务 URL:
https://mcp.apify.com/?tools=actors,docs,johnvc/Google-Flights-Data-Scraper-Flight-and-Price-Search - 身份验证: OAuth
- 点击 Create,并授权与 Apify 的连接。
- 如需在对话中使用该应用,请点击聊天中的 +,选择 Developer mode,然后选择 Apify。
更多帮助:https://docs.apify.com/platform/integrations/mcp
使用 Google Flights API 为旅行应用、票价追踪和分析提供支持,并获取可靠的结构化结果。
🤖 向 AI 助手询问此 Actor
在你选择的 AI 中打开一条关于 Google Flights API 的即用提示词:
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
最后更新:2026.10.27
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
