{"type":"coze-workflow-clipboard-data","source":{"workflowId":"7570981343917588530","flowMode":0,"spaceId":"7570979844868259874","isDouyin":false,"host":"www.coze.cn"},"json":{"nodes":[{"id":"100001","type":"1","meta":{"position":{"x":180,"y":13}},"data":{"nodeMeta":{"description":"工作流的起始节点,用于设定启动工作流需要的信息","icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Start-v2.jpg","subTitle":"","title":"开始"},"outputs":[{"type":"string","assistType":7,"name":"excel","required":true},{"type":"string","name":"msg_column_name","required":true},{"type":"string","name":"msg_id_name","required":true}],"trigger_parameters":[]},"_temp":{"bounds":{"x":0,"y":13,"width":360,"height":85.4},"externalData":{"icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Start-v2.jpg","description":"工作流的起始节点,用于设定启动工作流需要的信息","title":"开始","mainColor":"#5C62FF"}}},{"id":"900001","type":"2","meta":{"position":{"x":1560,"y":0}},"data":{"nodeMeta":{"description":"工作流的最终节点,用于返回工作流运行后的结果信息","icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-End-v2.jpg","subTitle":"","title":"结束"},"inputs":{"terminatePlan":"returnVariables","inputParameters":[{"name":"output","input":{"type":"list","schema":{"type":"string","schema":[]},"value":{"type":"ref","content":{"source":"block-output","blockID":"187122","name":"msg_list"},"rawMeta":{"type":99}}}}]}},"_temp":{"bounds":{"x":1380,"y":0,"width":360,"height":111.4},"externalData":{"icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-End-v2.jpg","description":"工作流的最终节点,用于返回工作流运行后的结果信息","title":"结束","mainColor":"#5C62FF"}}},{"id":"144698","type":"4","meta":{"position":{"x":616.3103774767508,"y":0}},"data":{"nodeMeta":{"description":"读取并解析Excel内容","icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Plugin-v2.jpg","subtitle":"ReadFile:readExcel","title":"readExcel"},"inputs":{"apiParam":[{"input":{"type":"string","value":{"content":"7379910475292737577","rawMeta":{"type":1},"type":"literal"}},"name":"apiID"},{"input":{"type":"string","value":{"content":"readExcel","rawMeta":{"type":1},"type":"literal"}},"name":"apiName"},{"input":{"type":"string","value":{"content":"7379910475292721193","rawMeta":{"type":1},"type":"literal"}},"name":"pluginID"},{"input":{"type":"string","value":{"content":"ReadFile","rawMeta":{"type":1},"type":"literal"}},"name":"pluginName"},{"input":{"type":"string","value":{"content":"","rawMeta":{"type":1},"type":"literal"}},"name":"pluginVersion"},{"input":{"type":"string","value":{"content":"","rawMeta":{"type":1},"type":"literal"}},"name":"tips"},{"input":{"type":"string","value":{"content":"","rawMeta":{"type":1},"type":"literal"}},"name":"outDocLink"}],"inputParameters":[{"name":"url","input":{"type":"string","value":{"type":"ref","content":{"source":"block-output","blockID":"100001","name":"excel"},"rawMeta":{"type":1}}}}],"settingOnError":{"processType":1,"timeoutMs":180000,"retryTimes":0}},"outputs":[{"type":"string","name":"output","required":true}]},"_temp":{"bounds":{"x":436.3103774767508,"y":0,"width":360,"height":111.4},"externalData":{"icon":"https://lf6-appstore-sign.oceancloudapi.com/ocean-cloud-tos/plugin_icon/default_icon.png?lk3s=cd508e2b&x-expires=1766582619&x-signature=0l7W7Y27eK5PaZPgaWO5pkRMDr0%3D","apiName":"readExcel","pluginID":"7379910475292721193","pluginProductStatus":1,"pluginProductUnlistType":0,"pluginType":1,"spaceID":"7370579338246782985","inputs":[{"description":"sheet页名称,不输入则读取第一个sheet页","input":{},"name":"sheetName","required":false,"type":"string"},{"description":"Excel地址","input":{},"name":"url","required":true,"type":"string"}],"outputs":[{"input":{},"name":"output","required":true,"type":"string"}],"updateTime":1763990343,"channel_id":2,"commercial_setting":{},"latestVersionTs":"0","latestVersionName":"","versionName":"","description":"读取并解析Excel内容","title":"readExcel","mainColor":"#CA61FF"}}},{"id":"187122","type":"5","meta":{"position":{"x":1100,"y":0}},"data":{"nodeMeta":{"description":"编写代码,处理输入变量来生成返回值","icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Code-v2.jpg","mainColor":"#00B2B2","subTitle":"代码","title":"数据类型转换"},"inputs":{"inputParameters":[{"name":"input","input":{"type":"string","value":{"type":"ref","content":{"source":"block-output","blockID":"144698","name":"output"},"rawMeta":{"type":1}}}},{"name":"msg_column_name","input":{"type":"string","value":{"type":"ref","content":{"source":"block-output","blockID":"100001","name":"msg_column_name"},"rawMeta":{"type":1}}}},{"name":"msg_id_name","input":{"type":"string","value":{"type":"ref","content":{"source":"block-output","blockID":"100001","name":"msg_id_name"},"rawMeta":{"type":1}}}}],"code":"# 在这里,您可以通过 'args' 获取节点中的输入变量,并通过 'ret' 输出结果\n# 'args' 已经被正确地注入到环境中\n# 下面是一个示例,首先获取节点的全部输入参数params,其次获取其中参数名为'input'的值:\n# params = args.params; \n# input = params['input'];\n# 下面是一个示例,输出一个包含多种数据类型的 'ret' 对象:\n# ret: Output = { \"name\": '小明', \"hobbies\": [\"看书\", \"旅游\"] };\n\nimport json\ndef extract_column(data_str: str, column: str) -> list:\n \"\"\"\n 从 data[\"output\"] 字段解析 JSON 列表,并提取指定列值列表\n :param data: 原始输入(dict)\n :param column: 要提取的列名(String)\n :return: 包含所有列值的 list\n \"\"\"\n # 1) 去掉转义\n data_str = data_str.replace('\\\\\\\"', '\"')\n\n rows = json.loads(data_str)\n\n # 提取列\n result = [row.get(column) for row in rows]\n return result\n\nasync def main(args: Args) -> Output:\n params = args.params\n input = params[\"input\"]\n msg_column_name = params[\"msg_column_name\"]\n msg_id_name = params[\"msg_id_name\"]\n\n msg_list = extract_column(input, msg_column_name)\n msg_id_list = extract_column(input, msg_id_name)\n msg_list = [{\"id\": msg_id_list[i], \"msg\": msg} for i, msg in enumerate(msg_list)]\n \n # 构建输出对象\n ret: Output = {\n \"msg_list\": msg_list\n }\n return ret","language":3,"settingOnError":{"processType":1,"timeoutMs":60000,"retryTimes":0}},"outputs":[{"type":"list","name":"msg_list","schema":{"type":"object","schema":[]}}],"version":"v2"},"_temp":{"bounds":{"x":920,"y":0,"width":360,"height":111.4},"externalData":{"icon":"https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Code-v2.jpg","description":"编写代码,处理输入变量来生成返回值","title":"代码","mainColor":"#00B2B2"}}}],"edges":[{"sourceNodeID":"100001","targetNodeID":"144698"},{"sourceNodeID":"187122","targetNodeID":"900001"},{"sourceNodeID":"144698","targetNodeID":"187122"}]},"bounds":{"x":0,"y":0,"width":1740,"height":111.4}}