Java 硒:非接触性异常
我正在尝试刮取此页面:使用以下XPath:Java 硒:非接触性异常,java,selenium,xpath,nosuchelementexception,Java,Selenium,Xpath,Nosuchelementexception,我正在尝试刮取此页面:使用以下XPath: • .//*[@id='ds_div'] • .//*[@id='pdets'] • .//*[@id='centercolumn']/ 但他们都没有任何例外 这很奇怪,因为当我用Firebug检查页面时,我能够很容易地找到元素。具有那些id值的元素位于框架内。您需要切换到其上下文: driver.switchTo().frame("desc_ifr"); 加载这些元素可能需要较长的时间,能否在查找元素之前放置wait命令?然后检查一下。谢谢。但是
• .//*[@id='ds_div']
• .//*[@id='pdets']
• .//*[@id='centercolumn']/
但他们都没有任何例外
这很奇怪,因为当我用Firebug检查页面时,我能够很容易地找到元素。具有那些
id
值的元素位于框架内。您需要切换到其上下文:
driver.switchTo().frame("desc_ifr");
加载这些元素可能需要较长的时间,能否在查找元素之前放置wait命令?然后检查一下。谢谢。但是我已经在使用隐式等待7秒了。谢谢。你真是个天才!请问您在HTML代码中的什么地方找到了iframe?我怀疑它可能是一个iFrame,但没有在任何地方找到术语iFrame,更不用说术语“desc_ifr”。你在哪里找到的?@JimKim是的,有一个iframe
元素带有id=“desc\u ifr”
。我通常只查找所需节点的父节点,一旦在那里看到iframe
或frame
,我就知道我必须更改搜索的上下文并切换到iframe
/frame
。很乐意帮忙,别忘了接受答案,这样我们就可以“解决”这个话题了。谢谢认可的。谢谢你的解释。