玩转自动化操作神器n8n之(2)使用n8n自动抓取天气预报,并发送到微信上

1. 基础知识

  • 自己构建对应的工作流,其实思路也是非常简单的,即触发-执行,具体来说就是:事件触发-数据获取-数据处理-执行动作 4步。

2. 抓取天气推送到手机端

  • [自己构建对应的工作流,其实思路也是非常简单的,即触发-执行,具体来说就是:事件触发-数据获取-数据处理-执行动作 4步。](…/案例/自己构建工作流/基础知识/自己构建对应的工作流,其实思路也是非常简单的,即触发-执行,具体来说就是:事件触发-数据获取-数据处理-执行动作 4步。.md)

2.1. 设置触发器

  • 触发事件可以选择按照时间触发,点击右侧的On a schedule
  • 我这里为了快速看到对应的效果,选择了30秒触发一次,实际使用中一般要比这个时间长一点

2.2. 获取数据

  • 这里使用的是用HTTP Request来获取数据

    将其拖下来
    设置对应的参数
参数	值	说明
Authentication	None	不需要认证
Request Method	GET	请求方式
URL	http://t.weather.itboy.net/api/weather/city/101020100	注意这是上海的天气
Response Format	JSON	返回的数据格式
  • 可以点击右上角的执行一下,看一下对应的效果
  • 不出意外的话,可以看到如下界面

2.3. 数据处理

  • 上面虽然可以获取下来上海的天气,但是数据的格式并不符合我们接下来要使用的格式。因此需要使用function节点来处理之前获取到的数据
  • 使用下面的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.replace(/\s*/g, '');
low = items[0].json.data.forecast[0].low.replace(/\s*/g, '');
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 = "天气预报:
今天是" + ymd + "," + week + ",今天天气" + type + "。最" + high + "度,最" + low + "度,风向" + fx + ",风力" + fl + ",空气质量" + quality + ",湿度" + shidu + "," + ganmao;
 
// 调试用的
//console.log(encodeURIComponent(yubao).replace(/'/g,"%27").replace(/"/g,"%22"));
 
// 中文写回到到 json 中
items[0].json.yubao = yubao;
// urlencode 后写回到到 json 中
//items[0].json.yubaoe = encodeURIComponent(yubao).replace(/'/g,"%27").replace(/"/g,"%22");
 
return items;
  • 执行一下可以得到下面的处理结果
  • 需要注意打开Output data才可以

2.4. 执行动作

  • 这里的执行动作就是把上面抓取到的数据推送到微信端上
  • n8n并不直接支持推送数据到微信上,但我们可以使用一些第三方的微信API接口来实现这个数据的推送。比如将数据推送到某一个公众号的服务器上面,由其再发到自己微信客户端的聊天窗口上。
  • 这里依然使用HTTP Request节点来执行这个动作,具体是通过向WxPusher发送GET请求,之后再发送给用户的聊天窗口。
  • [WxPusher (微信推送服务)是一个使用微信公众号作为通道的,实时信息推送平台,你可以通过调用API的方式,把信息推送到微信上,无需安装额外的软件,即可做到信息实时通知。 你可以使用WxPusher来做服务器报警通知、抢课通知、抢票通知,信息更新提示等。](…/…/…/…/…/…/API/微信API/WxPusher/简介/WxPusher (微信推送服务)是一个使用微信公众号作为通道的,实时信息推送平台,你可以通过调用API的方式,把信息推送到微信上,无需安装额外的软件,即可做到信息实时通知。 你可以使用WxPusher来做服务器报警通知、抢课通知、抢票通知,信息更新提示等。.md)
  • 具体的操作流程,参考这篇博客使用WxPusher来向微信端发送自定义的数据 - 知乎

具体参数

### 参数	值	说明
Authentication	None	不需要认证
Request Method	GET	请求方式
URL	http://wxpusher.zjiecode.com/api/send/message/	微信发送地址
Response Format	JSON	返回的数据格式
  • 之后添加参数Query Parameters如下,填好之后,点击一下执行

  • 如果没有报错的话,会显示创建发送任务成功

    手机端应该也可以接收到对应的消息了
  • 刚才的字段只是用来测试,我们还是应该把内容字段设置为之前抓取的天气的内容
    把左侧yubao的数据拖过来,再进行测试

    电脑手机上已经接收到这个天气预报的内容了

  • 在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pad和N-s是两个在软件工程中常用的绘制模具和使用方法的工具,它们可以帮助开发团队更有效地进行软件工程流程图的设计和实施。 Pad是一种流程图绘制工具,它提供了丰富的图形元素和功能,可以帮助开发人员创建各种类型的软件工程流程图,包括数据流程图、控制流程图和状态转换图等。Pad具有直观的用户界面和简洁的操作方式,可以快速实现流程图的绘制和编辑。此外,Pad还支持多种导出格式,如图片和PDF,方便与他人共享和使用。 N-s是一种盒图绘制工具,它专门用于绘制盒图,也称为N-s盒图。盒图是软件工程中的一种图形表示方法,用于描述软件系统中的各个模块和它们之间的关系。N-s提供了丰富的盒图元素和功能,可以帮助开发人员全面而清晰地呈现软件系统的结构和模块之间的依赖关系。N-s还支持自动生成盒图和自动布局功能,可以提高绘制效率并保持图表的美观。 使用Pad和N-s绘制模具和绘制软件工程流程图的方法如下: 首先,根据需求和设计要求,确定绘制的流程图类型,确定所使用的工具。如果需要绘制数据流程图,可以选择使用Pad;如果需要绘制盒图,可以选择使用N-s。 然后,打开对应的工具,创建新的绘图文档。在文档中选择合适的图形元素,如流程框、箭头和文本框等,并根据设计需求将它们拖拽到绘图区域。 接下来,根据实际业务流程,为每个模块或步骤添加相应的图形元素,并使用箭头表示它们之间的流程顺序和依赖关系。 最后,仔细检查绘制的流程图是否符合设计需求和规范要求,确认无误后保存和导出流程图。 综上所述,Pad和N-s是两个方便快捷的软件工程流程图绘制工具,它们可以帮助开发团队更高效地进行软件工程流程图的设计和实施,为软件开发过程提供了有力的支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值