0

当我尝试在 amazon.com 上执行自动搜索时,即使元素存在,它也会抛出异常“未找到元素”。我正在尝试通过其 ID 访问搜索文本框。

以下是对它的一些观察:

  • 亚马逊搜索页面具有搜索组件的正确 ID 但 Selenium 仍然无法找到该元素,抛出异常“未找到元素”。
  • 如果您在加载亚马逊网站后延迟一些,然后尝试定位元素,抛出异常'Window Not Found'。
  • 当我尝试使用 Selenium 驱动程序获取页面源时,它也无法获取正确的源。我得到了在 IE 打开后立即显示的 html 页面的源代码。

我怀疑亚马逊加载了一些 javascript 来阻止自动访问,我不确定。

任何解决此问题的建议将不胜感激。

如果有人以前遇到过此类问题,请分享您的经验。

谢谢。

4

2 回答 2

2

为我工作..

InternetExplorerDriver d1 = new InternetExplorerDriver();
d1.get("http://www.amazon.com/");
d1.findElementById("twotabsearchtextbox").sendKeys("cheese");
d1.quit;

这将打开 IE 8 窗口并在搜索框中输入 cheese。注意:我使用的是 webdriver 2.25,并从这里下载了最新的 IEDriver 。

希望您已将 IE 设置中的所有安全区域的保护模式设置为启用或相同。

于 2012-11-26T05:57:06.873 回答
0
 InternetExplorerDriver driver = new InternetExplorerDriver();
 driver.get("http://www.amazon.com/");
 driver.findElement (By.id("twotabsearchtextbox").sendKeys("state");
 or
 driver.findElement (By.xpath("//input[@id='twotabsearchtextbox']").sendKeys("state");
 or
 driver.findElement (By.xpath("//input[@name='field-keywords']").sendKeys("state"); 
 driver.quit;
于 2012-11-27T19:40:27.540 回答