使用n8n构建智能天气预报自动化工作流!
n8n 作为一款开源的AI Agent 工具,它的内置节点不仅多,功能还很强大,已经受到越来越多的AI 使用者的青睐,本文将通过构建一个完整的天气预报系统,来为大家展示一下 n8n 平台在数据处理方面的一个强大能力。
整体流程概述:

工作流完整示例:

技术栈:n8n + WeatherAPI + SMTP邮件服务
第一阶段:数据获取
步骤一:配置HTTP Request节点
作为起始节点,该节点的作用是负责从外部API获取原始天气数据
详细配置示例图如下:


配置核心要点说明:
● Method:选择默认(GET)
● URL网址:http://api.weatherapi.com/v1/current.json(不同API地址填写不一样,这里我用的是 weatherapi 第三方天气平台)
● Authentication:None
● Specify Query Parameters:选择“Using Fields Below”,需要填写参数,该工作流核心目的是获取某固定城市天气情况,因此参数我们增加三个:

步骤二:第三方天气AIP服务选择
天气第三方获取平台我用的是 weatherapi,该平台的优点是密钥生成后,瞬间就能生效和使用,非常方便。
其他推荐:OpenWeatherMap(需等待激活)、和风天气(国内服务)等。
注册流程:
● 访问WeatherAPI(https://www.weatherapi.com/)官网完成注册
● 在控制台获取API密钥
● 密钥立即生效,无等待时间
第二阶段:数据处理
步骤三:配置Code代码节点进行数据清洗
节点作用:配置Code代码节点将原始 API 的天气数据提取出来,并转换为能呈现的业务数据
代码填写完毕后,可点击右上方“Execute step”进行代码测试,看是否能正常获取到信息!

步骤四:增加调试节点,对传过来的数据进行测试
和步骤三一样,代码填写完毕后,也可进行代码测试,看是否出现问题。
步骤五:添加临时数据查看器
作用:可从 N8N 的运行日志中找到输出数据,可观察数据
第三阶段:天气判断
步骤六:配置 IF 节点
节点作用:通过对天气的好坏进行判断,根据不同天气情况生成不同的预警提醒,比如极端天气,就发邮件通知用户注意保暖、注意防暑等,如果是正常天气,就正常通知用户即可。
天气逻辑思路:
当天气<5°C(寒冷)或 >30°C(炎热)时,就是称为极端天气,否则就是正常天气,因此这里需要填写两个参数。
当天气<5°C(寒冷)时参数配置:
左边:{{ $json.keyMetrics.temperature.replace("°C", "") }} ,右边:5
当天气>30°C(炎热)时参数配置:
左边:{{ $json.keyMetrics.temperature.replace("°C", "") }},右边:30
示例如下:

步骤七:好坏天气配置
这里配置两个Code代码节点,一个是承接好天气,一个是承接坏天气。

特殊天气代码:
正常天气代码:
第四阶段:邮件通知
步骤八:获取QQ邮箱授权码
● 登录你的QQ邮箱
● 进入设置界面,点击账号与安全


● 开通你的POP3/SMTP服务,就会生成一段你的授权码(其他邮箱操作类似)!
步骤九:配置Email邮件节点发送通知
这里选择 Send email 节点,点击进入进行界面配置:

在Send Email节点中点击"Create New Credential",进行配置:


● User:你的邮箱(例如:123456@qq.com)
● Password:QQ邮箱授权码
● Host:填入“smtp.qq.com”
其他选项保持不变,不要去动它们。
步骤十:配置邮件内容

● From Email:你的QQ邮箱
● To Email:收件人邮箱
● Subject:{{ $json.notification.emoji }} {{ $json.notification.type }} - {{ $json.weather.temperature }}
HTML代码:
以上,整个获取天气的工作流就完成了,我们来测试一下:

点击工作流下方的“Execute workflow”,看是否能收到邮件!

已经受到邮件了,整个天气工作流就这样搭建完成了,当然,你还可以设置每天在固定时间,比如早上7点给你发送当天城市天气,赶快去实操吧。



