【问题标题】:C# Selenium cannot access element inside iframe unless I inspect element除非我检查元素,否则 C# Selenium 无法访问 iframe 中的元素
【发布时间】:2021-12-08 15:07:02
【问题描述】:

正如标题所说,我无法点击一个元素,我想知道为什么会这样。

我正在尝试通过 xpath 或 javascript 从 funcaptcha 中单击“验证”按钮。在仅检查 iframe 元素后,我可以在普通浏览器上执行此操作,所有内容都显示在源代码中。

网站:https://www.roblox.com/

当我在普通浏览器上手动检查元素时,我获得了所有必要的源代码,并且可以执行 javascript 代码来按下“验证”按钮。但是在 selenium c# 上,我无法让它工作。我尝试了很多不同的方法

website elements when inspecting element on my own browser

这是 C# 中的代码,它试图切换到 iframe 以执行所需的 javascript 以按“验证”请注意这两种解决方案(xpath 和 javascript)都不起作用。

c# code for switching to iframe and executing javascript to press verify (which fails)

this is what I'm trying to press "verify"

感谢任何帮助,因为我已经坚持了一段时间,让我无法展示我的项目想法

【问题讨论】:

    标签: javascript c# selenium iframe


    【解决方案1】:

    如果您将收到的错误消息包含在内,将会非常有帮助。

    【讨论】:

    • 你也可以使用隐式等待方法。
    • 就像我说的,无法访问 iframe 中的元素。基本上与找不到元素时的错误相同。 c# 代码执行得很好,直到我尝试执行一些 javascript 来查找元素或 c# 本身来查找元素...请在您自己的浏览器上尝试操作,您会明白我的意思。我在许多网站上使用过 selenium 数千次,但从未到过这一点。在您的普通浏览器上,您可以检查元素并找到该元素,但在 chromedriver selenium 上,您不能无缘无故。
    猜你喜欢
    • 1970-01-01
    • 2021-11-01
    • 2016-04-05
    • 2021-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多