[物語を忘れました]°のブログへようこそ

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

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

前言

本篇目的

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

步骤分解

步骤一

点击n8n图标进入 n8n页面
250606063554866.png#100%

步骤二

点击Add Workflow
585960181544780800.png#100%

步骤三

  • 点击底部"add"
  • 点击时钟"on a schedule"
    250606063756173.png#100%

步骤四

设置每天早上 9am
250606063908600.png#100%

步骤五

设置本工作流的时区

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

250606064150645.png#100%
250606064300575.png#100%

步骤六

以杭州为例

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

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退回流程界面

250606064603512.png#100%

250606064703294.png#100%

250606064913694.png#100%

250606065242946.png#100%

步骤七

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

250606065720845.png#100%

250606065756405.png#100%
然后再跳出的框中,复制如下代码

// 处理返回的 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;

250606065848999.png#100%

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

250606070151640.png#100%

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

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

后续我们用yubao_escaped那个

250606070252711.png#100%

步骤八

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

接下来就是推送消息

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

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

返回工作流,添加http节点

250606070458888.png#100%

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

Tips:

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

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

250606070822988.png#100%

步骤九

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

250606071258819.png#100%

显示成功,手机也看下

IMG_3900.PNG#100%

步骤十

写注释

写注释

写注释

对应的节点,鼠标移上去点三个小点,点rename就好了
250606071805034.png#100%

以上

后记

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

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

博客园挂了哈哈哈,会员费不够啊
250606072231576.png#100%

以下引用自仓库:

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

感谢作者

250606072424216.png#100%

项目标题 项目简介 项目地址 教程 star 最近更新
PushDeer 多端实时消息推送服务方案 点我查看 查看教程 Star Last Commit
ntfy 跨平台消息推送服务,部署简单 点我查看 查看教程 Star Last Commit
Bark 基于APNs将消息直达iPhone锁屏 点我查看 查看教程 Star Last Commit
Gotify 快速搭建本地实时消息推送平台 点我查看 查看教程 Star Last Commit
posted @ 2025-06-06 11:02  故事我忘了°  阅读(285)  评论(3)    收藏  举报