无法使用跨域 iframe 自动执行网页

本文提供了一种解决方法,用于解决以下问题:如果 Web 元素位于 Microsoft Power Automate 中的跨域 iframe,则无法自动执行网页。

备注

自 Power Automate 桌面版 版本 2.31(2023 年 4 月)以来,支持跨域 iframe 中的 Web 自动化。 本文适用于低于 2.31 的版本。

适用于: Power Automate
原始 KB 数: 4599053

症状

Web 自动化作无法与跨域 iframe 内的 Web 元素进行交互。 可以在创作期间成功捕获该元素。 但是,在运行时,你会收到类似于以下消息的错误消息:

在网页中单击链接失败。

验证问题

若要验证 Web 元素是否确实位于跨域 iframe 中,请执行以下步骤:

  1. 打开 Web 浏览器并找到元素。
  2. F12 打开浏览器的 DOM 资源管理器窗口。
  3. 通过 DOM 资源管理器选择元素。
  4. DOM 资源管理器 窗口中,找到其父 iframe 元素。
  5. 检查托管 iframe 元素的域。

域应不同于网页的域。

解决方法

在新选项卡或新的浏览器窗口中打开 iframe 元素的源网页,并在新网页上继续自动化。

此过程可以通过使用“获取网页中的元素的详细信息”作捕获嵌入网页的 URL 来自动化。 要捕获的属性值是 src iframe 元素的属性。

然后,使用“启动新浏览器”或“创建新选项卡”作打开新网页。

备注

在某些情况下,此解决方法可能不适用。 例如,如果要在 iframe 窗口中执行的作会影响父网页的其他字段。