精易论坛

标题: 这种分类的json怎么按照指定格式解析出来 [打印本页]

作者: jieqi    时间: 2025-6-21 12:45
标题: 这种分类的json怎么按照指定格式解析出来
分类.zip (633.3 KB, 下载次数: 4)

API文档地址:https://developers.weixin.qq.com ... getallcategory.html

我写了一段代码 运行起来不对。。

  
Json.解析 (data)
调试输出 (“成员数”, Json.成员数 (“['cats_v2']”))
计次循环首 (Json.成员数 (“['cats_v2']”), A)
计次循环首 (Json.成员数 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua']”), B)
cat_id = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat['cat_id']”)
cat_name = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat.name”)
f_cat_id = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat['f_cat_id']”)
level = 到整数 (Json.取属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat.level”).取数据文本 ())
如果 (Json.取属性对象 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat.leaf”)“true”)
leaf = 真


leaf = 假

如果 (level > 1)
path = cat_name + “ => ” + path
level = level - 1
cat_name = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat['f_cat_id']”)


path = cat_name + “ => ” + path + “最子级类目ID: ” + cat_id

计次循环尾 ()
编辑框3.加入文本 (path + 到文本 ( #换行符 ))
调试输出 (“已循环次数:”, A)
计次循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库



期望输出的格式是
类目=>N类目=>N类目=>最子级类目+类目ID




作者: 熬夜    时间: 2025-6-21 13:40
没人解答你商业的单子  我给你个思路   你把每个 大类解析名字出来  放到列表1  列表1 第一行 类名 列表第二行 类名里面的json内容代格式

然后你选中列表1里面的类名  获取对应的json  自动解析到 列表2  以此类推 多几个列表分级显示
作者: jieqi    时间: 2025-6-22 14:26
自己写了一个 好像不对



  
子程序名返回值类型公开备 注
_按钮2_被单击  
变量名类 型静态数组备 注
URL文本型 
data文本型 
Json类_json 
cat_id文本型 
cat_name文本型 
f_cat_id文本型 
level整数型 
A整数型 
B整数型 
C整数型 
D整数型 
E整数型 
F整数型 
一级类目文本型0
一级类目ID文本型0
一级类目上级文本型0
二级类目文本型0
二级类目ID文本型0
二级类目上级文本型0
三级类目文本型0
三级类目ID文本型0
三级类目上级文本型0
四级类目文本型0
四级类目ID文本型0
四级类目上级文本型0
类目文本型 
URL = https://api.weixin.qq.com/channels/ec/category/all?access_token= + access_token
data = 编码_utf8到gb2312 (到文本 (网页_访问_对象 (URL, 0, , )))
Json.解析 (data)
进度条1.最大位置 = 到整数 (Json.成员数 (“['cats_v2']”))
计次循环首 (Json.成员数 (“['cats_v2']”), A)
进度条1.位置 = A
计次循环首 (Json.成员数 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua']”), B)
cat_id = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat['cat_id']”)
cat_name = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat.name”)
f_cat_id = Json.取通用属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat['f_cat_id']”)
level = 到整数 (Json.取属性 (“['cats_v2'][”到文本 (A - 1)“]['cat_and_qua'][”到文本 (B - 1)“].cat.level”).取数据文本 ())
如果真 (level = 1)
加入成员 (一级类目, cat_name)
加入成员 (一级类目ID, cat_id)
加入成员 (一级类目上级, f_cat_id)
如果真 (level = 2)
加入成员 (二级类目, cat_name)
加入成员 (二级类目ID, cat_id)
加入成员 (二级类目上级, f_cat_id)
如果真 (level = 3)
加入成员 (三级类目, cat_name)
加入成员 (三级类目ID, cat_id)
加入成员 (三级类目上级, f_cat_id)
如果真 (level = 4)
加入成员 (四级类目, cat_name)
加入成员 (四级类目ID, cat_id)
加入成员 (四级类目上级, f_cat_id)

计次循环首 (取数组成员数 (一级类目), C)
计次循环首 (取数组成员数 (二级类目), D)
如果真 (二级类目上级 [D] = 一级类目ID [C])
计次循环首 (取数组成员数 (三级类目), E)
如果真 (三级类目上级 [E] = 二级类目ID [D])
计次循环首 (取数组成员数 (四级类目), F)
如果真 (四级类目上级 [F] = 三级类目ID [E])
类目 = 一级类目 [C]“<=” + 二级类目 [D]“<=” + 三级类目 [E]“<=” + 四级类目 [F]

计次循环尾 ()

计次循环尾 ()

计次循环尾 ()
计次循环尾 ()
计次循环尾 ()
编辑框3.加入文本 (类目 + 到文本 ( #换行符 ))
计次循环尾 ()






欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4