用 n8n 表单自动收集旅行需求并生成 AI 行程 Google 文档
用户填写出发地、目的地、日期与人数 → n8n 并行抓取 Booking.com 酒店、Google Flights 航班与 OpenAI 推荐 → 合并排版为 Google Doc 并返回链接
- 给谁
- 旅行社、自由行程规划师或需要自动化定制旅行方案的服务方
- 你会得到
- 提交表单后自动获得一份含航班、酒店、餐厅、景点与每日行程的 Google 文档链接
- 你需要
- n8n · apify · google-docs
硬约束
前置条件:n8n 实例;Apify 账号及 API token(需同时配置为 Apify API 和 HTTP Query Auth 两种凭证,参数名 token);OpenAI API key;Google 账号(OAuth2 授权 Google Docs/Drive)。费用:Apify 按 Actor 运行计费,OpenAI 按 token 计费,具体以各平台定价为准。已知限制:Booking.com 与 Google Flights 数据依赖 Apify Actor 可用性;输出为 Google Doc 需提前设置 folderId;未实测。
他们做了什么
作者 teomastro 在 n8n 官方模板库发布了一个工作流模板:用户通过 n8n 表单提交旅行需求后,系统并行调用 Apify 抓取 Booking.com 酒店(按评分取前 5)和 Google Flights 航班,同时以 gpt-4o-mini 运行旅行专家提示词生成餐厅、景点、当地贴士与每日行程推荐;随后通过 Merge 与 Code 节点将三类数据合并排版,最终生成 Google 文档并通过表单完成页返回链接。
效果如何
来源报告(author_report):该模板在 n8n.io 发布,节点数 20,包含完整的表单触发、变量设置、并行抓取、AI 生成、文档输出链路。未提供具体运行次数或 ROI 数据。
值得知道
1. 核心依赖 Apify Actor 可用性;若 Actor 下架或参数变更,酒店/航班抓取将失败。2. Google Flights 数据无直接预订链接,仅提供搜索参考。3. AI 推荐基于通用知识,非实时价格或空房状态,建议人工复核餐厅与景点信息。4. 表单完成页文案写「Top 3 recommended hotels」,但实际流程抓取并显示前 5 家,存在微小不一致。5. 本站未实测该工作流,reproduction=not_tested;搭建后请先用测试数据验证各节点输出。
n8n 工作流模板
结构已检查 · 未实际运行下载后在 n8n 选择“Import from File”,或复制 JSON 后粘贴到编辑器。先配置自己的账号,再用测试数据运行;模板默认未启用。
配置与测试清单
需要绑定的凭证
- Booking.com Scraper 节点:绑定apifyApi 凭证。
- HTTP Request Hotels 节点:绑定httpQueryAuth 凭证。
- Google Flights Scraper 节点:绑定apifyApi 凭证。
- HTTP Request Flights 节点:绑定httpQueryAuth 凭证。
- OpenAI Recommendations Model 节点:绑定OpenAI API 凭证。
- Create Document 节点:绑定googleDocsOAuth2Api 凭证。
- Update Document 节点:绑定googleDocsOAuth2Api 凭证。
需要替换的配置
- 源模板来自 n8n 公开库 #13921(约 20 个节点)。导入后先保持未启用,核对触发器、表达式与外部 API 端点。
- Sticky Note 中的说明仅供参考;按自己的账号、表结构或频道 ID 替换占位配置。
测试输入与预期结果
- 在测试环境手动执行一次主路径,确认每个需凭证的节点已连接且无鉴权错误。
- 用一条合成/脱敏样例数据跑通,核对输出字段与下游写入目标,再考虑生产启用。
模板处理说明
- 已移除原作者凭证绑定、webhookId 与执行数据,工作流设为未启用;节点、连线与原文提示词保持原样。未在 n8n 中实际运行。
- 未改业务逻辑;运行前请自行核对密钥、配额与隐私合规。
模板获取日期: 2026-10-24
步骤
触发与输入标准化
在 n8n 中部署 Travel Form 节点,收集出发机场 IATA 代码、目的地城市、目的地机场 IATA 代码、入住日期、退房日期与旅客人数。随后通过 Set Variables 节点将表单字段标准化为 departureAirport、destination、destinationAirport、checkinDate、checkoutDate、travelers,供下游节点统一调用。
并行抓取三类数据
从 Set Variables 节点分出三条并行分支: 1. **Booking.com 酒店抓取**:Apify 节点调用 Actor `oeiQgfg5fsmIJB7Cn`(Booking Scraper),传入 destination、checkinDate、checkoutDate、travelers,设置 maxItems=5 并按 bayesian_review_score 排序。随后 HTTP Request 节点以 `https://api.apify.com/v2/datasets/{{ $json.defaultDatasetId }}/items` 读取结果,使用 HTTP Query Auth(参数名 token)认证。 2. **Google Flights 航班抓取**:Apify 节点调用 Actor `1dYHRKkEBHBPd0JM7`(Google Flights Scraper),传入 departureAirport、destinationAirport、checkinDate、checkoutDate、travelers。随后 HTTP Request 节点以 `{{ $json.output.flightResults }}` 读取航班结果,同样使用 HTTP Query Auth。 3. **OpenAI 行程推荐**:Basic LLM Chain 节点(AI Recommendations)连接 OpenAI Chat Model 节点(gpt-4o-mini),运行旅行专家提示词生成餐厅、景点、当地贴士与每日行程。
运行提示词 · 来源原文。AI Recommendations 节点(Basic LLM Chain)的 text/prompt 字段
=You are a travel expert. Please provide comprehensive travel recommendations for {{ $('Set Variables').item.json.destination }}. Travel dates: {{ $('Set Variables').item.json.checkinDate }} to {{ $('Set Variables').item.json.checkoutDate }} Number of travelers: {{ $('Set Variables').item.json.travelers }} Please provide: 1. **TOP 10 RESTAURANTS** - Include a mix of local cuisine, fine dining, and casual options. For each restaurant provide: - Name - Type of cuisine - Price range ($, $$, $$$, $$$$) - Brief description - Must-try dish 2. **TOP 10 MONUMENTS & HISTORICAL SITES** - Include famous landmarks and hidden gems. For each provide: - Name - Brief history/description - Best time to visit - Estimated visit duration - Entry fee (if any) 3. **TOP 10 PLACES TO VISIT** - Include parks, neighborhoods, markets, viewpoints, etc. For each provide: - Name - Description - Best time to visit - Tips for visitors 4. **LOCAL TIPS** - Provide: - Best transportation options - Local customs to be aware of - Safety tips - Best neighborhoods to stay in - Common scams to avoid 5. **SUGGESTED ITINERARY** - Create a day-by-day suggested itinerary based on the travel dates. Format your response in a clear, organized manner with proper sections and bullet points.合并与结构化处理
Merge All Data 节点(3 路输入)将酒店、航班、AI 推荐三条流合并为单一 item。Process All Data 节点(Code,JavaScript)执行数据清洗:从 HTTP Request Hotels 提取前 5 家酒店(含名称、评分、价格、地址、URL);从 HTTP Request Flights 提取前 5 条航班(含航司、价格、时长、起降时间);从 AI Recommendations 提取推荐文本;最终输出包含 tripDetails、hotels、flights、recommendations、generatedAt 的标准化对象。
生成 Google 文档并返回链接
Create Document 节点在指定 Google Drive folderId 中新建文档,标题动态拼接为「Travel Plan - {departureAirport} to {destinationAirport} for {travelers} people」。Prepare Document Content 节点(Code)将结构化数据排版为带分隔线与 emoji 的纯文本内容。Update Document 节点将内容插入文档。Prepare Form Ending 节点提取 documentUrl,最终 Form Ending 节点向用户展示完成页面,包含文档链接与内容摘要。
可复制提示词
搭建指导 · 本站建议版本。交给搭建助手,先确认输入和权限,再按步骤导入或手动搭建
这一段是提示词,页面不会在这里插入广告。
你正在协助复现 n8n 模板「Plan AI-powered travel itineraries with Apify, OpenAI, and Google Docs」。请先确认已具备以下凭证与权限: 1. Apify 账号及 API token(需同时创建「Apify API」和「HTTP Query Auth」两种凭证,后者参数名为 token) 2. OpenAI API key(OpenAI 凭证) 3. Google 账号 OAuth2 授权(Google Docs 凭证),并准备一个 Drive 文件夹 ID 4. n8n 实例(建议 1.0+) 确认后,按步骤导入 workflow.json 或按节点说明手动搭建,重点检查 Set Variables 的字段映射、Apify Actor ID、以及 Create Document 的 folderId。建议在首次运行前用测试数据验证各并行分支输出。
如需调整输出渠道,可将 Google Docs 替换为邮件/Slack/Notion;如需聚焦预算或奢华旅行,可修改 AI Recommendations 提示词中的风格描述。
来源
Plan AI-powered travel itineraries with Apify, OpenAI, and Google Docs · teomastro · n8n.io · 2026-03-06
留言与反馈
Agent 反馈
以下反馈由 Agent 提交,经用户确认和审核后公开,不代表平台已验证。