十步,做一个基于Claw Cloud的天气推送

作者:故事我忘了
个人微信公众号:程序猿的月光宝盒


目录

前言

本篇目的

  • 为了填b站自己挖的坑(说公众号有教程 实际只有开通爪云教程没有案例教程)
  • 为了自己记录
    以下步骤 默认你已经会在App Store 中安装n8n

步骤分解

步骤一

点击n8n图标进入 n8n页面

步骤二

点击Add Workflow

步骤三

  • 点击底部"add"
  • 点击时钟"on a schedule"

步骤四

设置每天早上 9am

步骤五

设置本工作流的时区

  • 点击工作流右上角的三个点
  • 点击setting
  • 找到Timezone,输入 +08,下拉框找到北京
  • 选择北京,并点保存
    这样,时区就设置好了 否则时区是对不上中国本土时间的哦


步骤六

以杭州为例

添加请求节点,获取杭州天气

http request说明:

  • 默认get请求不变
  • url写:http://t.weather.itboy.net/api/weather/city/101210101
    • 其中 101210101 为城市编码,这里是杭州
  • 点击 add option,选择 Response
  • 在format那里选择json,表示这个请求返回的格式是json格式
  • 然后你点一下 右上角的 test,右边选择 json(可选可不选,选了更清晰),就能看到天气了,说明没问题 ,然后左上角点 Back to canvas退回流程界面

步骤七

上一步只是获取了接口请求的结果,然后我们要对结果进行自定义的清洗

然后再跳出的框中,复制如下代码

JavaScript 复制代码
// 处理返回的 json 格式的数据并拼接成字符串
// 只处理了当天的数据

shidu = items[0].json.data.shidu;
pm25 = items[0].json.data.pm25;
pm10 = items[0].json.data.pm10;
quality = items[0].json.data.quality;
wendu = items[0].json.data.wendu;
ganmao = items[0].json.data.ganmao;
high = items[0].json.data.forecast[0].high;
low = items[0].json.data.forecast[0].low;
fx = items[0].json.data.forecast[0].fx;
fl = items[0].json.data.forecast[0].fl;
type = items[0].json.data.forecast[0].type;
ymd = items[0].json.data.forecast[0].ymd;
week = items[0].json.data.forecast[0].week;

var yubao = `杭州今日天气预报:\n` +
            `📅 日期: ${ymd} (${week})\n` +
            `🌤 天气: ${type}\n` +
            `🌡 温度: ${low} ~ ${high}\n` +
            `🎐 风力: ${fx} ${fl}\n` +
            `📊 空气质量: ${quality} (PM2.5: ${pm25} | PM10: ${pm10})\n` +
            `💧 湿度: ${shidu}\n` +
            `⚠️ 提示: ${ganmao}`;

// 中文写回到到 json 中
items[0].json.yubao = yubao;
// 转义换行符,为了在后续的节点中正确解析换行
items[0].json.yubao_escaped = yubao.replace(/\n/g, "\\n");  

return items;

再点击右上角的齿轮,设置返回

此时,可以右上角的Test再测一下

不出意外,json那拉到最下,是有我们添加的自定义节点的

后续我们用yubao_escaped那个

步骤八

上面七步已经从接口获取了天气,并清洗完成,

接下来就是推送消息

这里可以推送的方式很多,因为之前做数藏推送,我用wxpusher多 这里就以这个举例子,本来是可以推送到微信的,但是最近微信封很严重,wxpusher官方建议用app了 那这里就用app

本次不教怎么用wxpusher,自行学习

返回工作流,添加http节点

根据wxpusher的要求填写相关请求信息,这里不赘述wxpusher的使用方法

Tips:

唯一要注意的是获取上一步我们清洗好的数据然后发送

用的是{{ $json.yubao_escaped }},如果作为json的value,注意用双引号括起来

步骤九

然后返回工作流,测试一下

显示成功,手机也看下

步骤十

写注释

写注释

写注释

对应的节点,鼠标移上去点三个小点,点rename就好了

以上

后记

  • 这个例子只是抛转一下
    可以做的事情由你决定
    但是别违法违纪
  • 上文提到的城市编码:https://blog.csdn.net/u013193363/article/details/44851897
  • 推送可以有很多方式,这里再介绍/记录几个开源的

时间: 2025年6月6日 07:21:49

博客园挂了哈哈哈,会员费不够啊

以下引用自仓库:

Awesome-NAS-Docker:https://github.com/TWO-ICE/Awesome-NAS-Docker

感谢作者

项目标题 项目简介 项目地址 教程 star 最近更新
PushDeer 多端实时消息推送服务方案 点我查看 查看教程
ntfy 跨平台消息推送服务,部署简单 点我查看 查看教程
Bark 基于APNs将消息直达iPhone锁屏 点我查看 查看教程
Gotify 快速搭建本地实时消息推送平台 点我查看 查看教程