【问题标题】:Cannot access any element inside frame using Selenium无法使用 Selenium 访问框架内的任何元素
【发布时间】:2021-01-13 19:02:30
【问题描述】:

简而言之,我正在尝试按此图像中的“下一步”按钮。其对应的 HTML 在右侧的 Elements 选项卡中突出显示。这是一个按钮。然而,整个框架在某种程度上是不容易搜索的。我尝试通过多种方式按下它,例如:

driver.find_element_by_css_selector('button.page_btn_font.btnNextNormal.ng-binding').click()

我尝试了很多,但没有任何效果。因此,当我尝试发布此问题并尝试列出页面中的所有按钮时,我去了one of the suggested questions。令人惊讶的是,我只找到并且可以单击右侧上方标题中的两个按钮:ToolsJOHN DOE。简而言之,我什至无法使用所有按钮访问下面的框架。

我检查了 HTML 代码的顶部,并在主图片下方发布了它的 sn-p。当我用 id='content-container" 将鼠标悬停在第二个 div 上时,整个框架都会突出显示,所以我必须以某种方式进入它。请记住,按钮本身在 div 中的深度为 10-15 层,因此不会按顺序进行如果我们走那条路就容易了。

请放大查看图片。

【问题讨论】:

  • 将 html 代码添加为图像是不好的做法,没有人会为您编写。添加 html 代码作为帖子的一部分而不是图像。请阅读minimal reproducible example 并相应地编辑您的帖子。如果此页面的 URL 是公开的,请分享。
  • 它是否在 iframe 中,它是什么网站?
  • @zack fair 请分享网址以仔细检查并给出解决方案?
  • @Dev 在这种情况下,我将代码添加为图片,因为我认为问题不在于我展示的部分。这就是我要点击的按钮。但问题远不止于此。根本就是如何访问这个框架,为此我在最后提供了一个更高级别的 5-6 行视图。我可以发布整个代码,但会很多。而且我必须删除任何个人信息,这也需要一段时间。 arundeepchohan 我怎么知道它是 iframe?这是一个 Everfi 培训模块。所以不幸的是不是公共链接。 JustinLambert 非公开网址 :(
  • 你觉得I think the problem is not really in the part I showed. That's the button I want to click. But the problem is bigger than that这真的有道理

标签: python html selenium button user-interaction


【解决方案1】:

请使用以下xpath点击下一步

//button[contains(text(),'Next')]

【讨论】:

  • 这会返回一个空变量,正如我所提到的。这是关键问题。我无法访问框架内的任何内容。
  • 你能在这里查看网址吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-02
  • 1970-01-01
相关资源
最近更新 更多