『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 11295|回复: 11

[流程系列] 请教一个node-red解析数据的问题

[复制链接]

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
发表于 2020-12-4 14:12:30 | 显示全部楼层 |阅读模式
本帖最后由 ocerot 于 2020-12-4 14:20 编辑

请教一下如何获取json消息中值的名字?
如下面截图,我用sonarr自动下载剧集,我想获取到剧集的名称然后发送微信推送,但我只能获取到下载进度,如何知道剧集名?
微信图片_20201204141708.png
回复

使用道具 举报

27

主题

2143

帖子

8930

积分

论坛元老

Rank: 8Rank: 8

积分
8930
金钱
6782
HASS币
30

论坛元老

发表于 2020-12-4 17:56:43 | 显示全部楼层
鼠标移动到相应位置,右侧有复制内容和复制路径的选项
回复

使用道具 举报

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
 楼主| 发表于 2020-12-6 23:59:12 | 显示全部楼层
情非殇 发表于 2020-12-4 17:56
鼠标移动到相应位置,右侧有复制内容和复制路径的选项

嗯这个复制路径我知道,我是想说怎么能通过函数找到这个路径。因为冒号前面是剧集名称,后面是下载百分比。我想通过函数调取剧集名。 微信图片_20201206235814.png
回复

使用道具 举报

7

主题

188

帖子

2344

积分

金牌会员

Rank: 6Rank: 6

积分
2344
金钱
2156
HASS币
0
发表于 2020-12-27 07:01:48 来自手机 | 显示全部楼层
返回json或是xml字符串后,使用字符串提取函数
回复

使用道具 举报

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
 楼主| 发表于 2021-1-1 11:33:59 | 显示全部楼层
xlsj519 发表于 2020-12-27 07:01
返回json或是xml字符串后,使用字符串提取函数

能稍微具体点么,不是很懂
回复

使用道具 举报

7

主题

188

帖子

2344

积分

金牌会员

Rank: 6Rank: 6

积分
2344
金钱
2156
HASS币
0
发表于 2021-1-4 09:46:51 | 显示全部楼层
说下大体思路吧:
1.先设定一个字符串,把那个attributes后面的内容赋给该字符串,这个要用debug看看字符串的具体内容是什么。
var str1 = msg.data.attributes
2.从左到右查找第一个“:”的位置(坐标)
var nameend = str1.indexOf(":") ; //从左向右查找第一个冒号字符的位置,确定电影名字结束位置
var name = str1.substr(0,nameend); //截取str1字符串从第一位至第一个冒号之见的字符串
回复

使用道具 举报

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
 楼主| 发表于 2021-1-5 12:10:00 | 显示全部楼层
xlsj519 发表于 2021-1-4 09:46
说下大体思路吧:
1.先设定一个字符串,把那个attributes后面的内容赋给该字符串,这个要用debug看看字符串 ...

微信图片_20210105120828.png
用这个路径查不出数据。。
function : (error)
"TypeError: str1.indexOf is not a function"

回复

使用道具 举报

7

主题

188

帖子

2344

积分

金牌会员

Rank: 6Rank: 6

积分
2344
金钱
2156
HASS币
0
发表于 2021-1-5 14:28:24 | 显示全部楼层
1、上面的内容要放在 function节点,你那个节点好像不是 function。
2、var str1 = msg.data.attributes后面加个半角分号
3、那个冒号注意看看是半角还是全角的
回复

使用道具 举报

7

主题

188

帖子

2344

积分

金牌会员

Rank: 6Rank: 6

积分
2344
金钱
2156
HASS币
0
发表于 2021-1-5 15:18:18 | 显示全部楼层
ocerot 发表于 2021-1-5 12:10
用这个路径查不出数据。。
function : (error)
"TypeError: str1.indexOf is not a function"

或是你把流程导出来给我,我这导入看看
回复

使用道具 举报

2

主题

112

帖子

1694

积分

金牌会员

Rank: 6Rank: 6

积分
1694
金钱
1582
HASS币
0
 楼主| 发表于 2021-1-5 22:41:17 | 显示全部楼层
xlsj519 发表于 2021-1-5 15:18
或是你把流程导出来给我,我这导入看看

flows (1).zip (878 Bytes, 下载次数: 7)
确实使用的是function节点,符号用的也是半角。
不过感谢你的帮助,我想出了应该可以用split节点拆分数据后然后在读取数据的方法
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-23 17:42 , Processed in 0.085841 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表