【问题标题】:Selenium: NoSuchElementException硒:NoSuchElementException
【发布时间】:2015-09-01 03:24:59
【问题描述】:

我正在尝试使用以下 XPath 抓取此页面:http://www.ebay.com/itm/311419628966

• .//*[@id='ds_div']
• .//*[@id='pdets']
• .//*[@id='centercolumn']/

但它们都抛出 NoSuchElementException。

这很奇怪,因为当我使用 Firebug 检查页面时,我能够轻松找到元素。

【问题讨论】:

  • 这些元素可能需要很长时间才能加载,您可以在元素查找之前放置等待命令吗?然后检查。
  • 谢谢。但我已经在使用 7 秒的隐式等待。

标签: java selenium xpath nosuchelementexception


【解决方案1】:

具有id 值的元素位于frame 内。你需要切换到它的上下文:

driver.switchTo().frame("desc_ifr");

【讨论】:

  • 谢谢。你是个天才!请问您在 HTML 代码中的哪个位置找到了它的 iframe?我怀疑它可能是一个 iFrame,但在任何地方都没有找到 iFrame 这个词,更不用说“desc_ifr”这个词了。你在哪里找到的?
  • @JimKim 是的,有一个带有id="desc_ifr"iframe 元素。我通常只查找所需节点的父节点,一旦在那里看到iframeframe,我知道我必须更改搜索的上下文并切换到iframe/frame。很高兴能提供帮助,不要忘记接受答案,这样我们就可以“解决”这个话题。谢谢!
  • 接受。感谢您的解释。
猜你喜欢
  • 2016-04-17
  • 2015-11-06
  • 2021-04-20
  • 2015-01-09
  • 1970-01-01
  • 2020-12-07
  • 2021-10-21
  • 2021-11-23
  • 1970-01-01
相关资源
最近更新 更多