Power Automate怎么解析XML内容 XPath函数
发布时间 - 2025-12-27 00:00:00 点击率:次Power Automate 中无法直接使用 XPath 函数解析 XML,推荐先用「XML」操作将 XML 转为 JSON 再解析;也可在 Compose 等支持表达式的动作中用 xpath(xml(), 'path') 提取,或结合 Parse JSON 进行强类型解析。
Power Automate 中不能直接使用 XPath 函数(如 xpath())解析 XML,因为原生的 XPath 支持在标准操作中已被移除或仅限特定连接器(如 Share
Point、SQL Server)。但你可以通过几种可靠方式实现 XML 解析,核心思路是:先将 XML 转为 JSON 或用表达式提取节点,再用 Power Automate 内置函数处理。
用 XML 操作转换为 JSON 后解析
这是最推荐、兼容性最好的方法。Power Automate 提供了「XML」操作(位于「数据操作」类别),可将 XML 字符串自动转为结构化 JSON,之后就能用 body()、outputs() 和 variables() 配合点号语法(如 item?.name)安全取值。
- 确保输入是格式良好的 XML 字符串(含根节点,标签闭合,无非法字符)
- 添加「XML」操作 → 输入 XML 内容(可来自变量、触发器输出或 compose)
- 后续步骤中,用动态内容选择转换后的节点,或用表达式如:
outputs('XML')?['root']?['items']?['item'][0]?['title'] - 注意:数组需用索引或 apply to each;空值用
?安全导航避免报错
用 Compose + 表达式模拟简单 XPath 提取
对轻量级需求(如取某个固定路径的文本值),可用 xml() + xpath() 组合表达式——但仅在「Compose」或条件判断等支持表达式的动作中有效,且要求环境支持(部分云版流程已启用,政府云/本地网关可能受限)。
- 表达式示例(提取
中的 title 文本):Power BI xpath(xml(triggerBody()), 'string(/book/title)') - 必须先用
xml()将字符串转为 XML 对象,否则xpath()会失败 - 支持常见 XPath 语法:
//author、/catalog/book[1]/price、count(//book) - 返回结果是字符串,数值需用
int()或float()转换
用 Parse JSON 配合手动 Schema 精确解析
当 XML 结构稳定、字段明确时,先用「XML」操作转 JSON,再用「Parse JSON」动作定义 schema,能获得更强的类型提示和动态内容自动识别。
- 运行一次 XML 转换动作,复制输出 JSON 示例
- 在「Parse JSON」中粘贴该 JSON,点击「生成架构」自动生成 schema
- 后续所有字段都可通过直观动态内容选取,无需写表达式
- 适合多层嵌套、含属性(@attr)或混合文本+子节点的复杂 XML
注意事项与避坑提醒
实际使用中容易忽略这些细节,导致解析失败或取值为空:
- XML 命名空间(xmlns)会让 xpath 失效,建议预处理:用 replace() 清除命名空间声明,或用
local-name()匹配(如xpath(xml(...), '//*[local-name()="title"]')) - XML 中的属性需用
@name语法,例如/book/@id;文本内容用text()或省略(如/book/title默认取文本) - 触发器返回的 XML 若是 base64 编码(如 Outlook 附件),需先用
base64ToString()解码 - 大 XML(>5MB)可能超出行动限制,建议用 Azure Functions 或 Logic Apps 替代
# js
# json
# 编码
# app
# outlook
# sql
# 架构
# String
# Float
# count
# 命名空间
# xml
# 字符串
# int
# 对象
# sharepoint
# azure
# 先用
# 或用
# 需用
# 再用
# 这是
# 最好的
# 已被
# 可以通过
# 自动识别
# 可在
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何用低价快速搭建高质量网站?
如何快速搭建高效香港服务器网站?
如何快速生成可下载的建站源码工具?
java获取注册ip实例
如何续费美橙建站之星域名及服务?
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
如何快速上传自定义模板至建站之星?
Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑
Laravel如何处理异常和错误?(Handler示例)
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化
原生JS实现图片轮播切换效果
香港服务器如何优化才能显著提升网站加载速度?
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
Laravel如何生成API文档?(Swagger/OpenAPI教程)
如何用JavaScript实现文本编辑器_光标和选区怎么处理
制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?
青岛网站建设如何选择本地服务器?
Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】
如何选择PHP开源工具快速搭建网站?
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
android nfc常用标签读取总结
如何在新浪SAE免费搭建个人博客?
Laravel如何实现一对一模型关联?(Eloquent示例)
LinuxShell函数封装方法_脚本复用设计思路【教程】
zabbix利用python脚本发送报警邮件的方法
Python3.6正式版新特性预览
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
Linux网络带宽限制_tc配置实践解析【教程】
如何在宝塔面板中修改默认建站目录?
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
百度浏览器如何管理插件 百度浏览器插件管理方法
Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】
零基础网站服务器架设实战:轻量应用与域名解析配置指南
利用 Google AI 进行 YouTube 视频 SEO 描述优化
IOS倒计时设置UIButton标题title的抖动问题
phpredis提高消息队列的实时性方法(推荐)
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
Laravel如何使用withoutEvents方法临时禁用模型事件
高端云建站费用究竟需要多少预算?
使用spring连接及操作mongodb3.0实例
深圳网站制作培训,深圳哪些招聘网站比较好?
WEB开发之注册页面验证码倒计时代码的实现
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
googleplay官方入口在哪里_Google Play官方商店快速入口指南
个人摄影网站制作流程,摄影爱好者都去什么网站?
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
详解Oracle修改字段类型方法总结
下一篇:免费域名注册平台全攻略
下一篇:免费域名注册平台全攻略

