0

amazon.com で自動検索を実行しようとすると、要素が存在するにもかかわらず、「要素が見つかりません」という例外がスローされます。IDで検索テキストボックスにアクセスしようとしています。

以下は、その観察結果です。

  • Amazon 検索ページには検索コンポーネントの適切な ID がありますが、それでも Selenium は要素を見つけることができず、「要素が見つかりません」という例外がスローされます。
  • Amazon Web サイトをロードした後に少し遅れると、要素を見つけようとすると、「ウィンドウが見つかりません」という例外がスローされます。
  • Selenium Driverでページソースを取得しようとしたところ、正しいソースも取得できませんでした。IEを開いた直後に表示されるhtmlページのソースを入手しました。

自動アクセスを防ぐために、Amazon が何らかの JavaScript をロードしていると思われますが、よくわかりません。

この問題を解決するための提案をいただければ幸いです。

誰かが以前にそのような問題に直面した場合は、あなたの経験を共有してください.

ありがとう。

4

2 に答える 2

2

私のために働く..

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

これにより、IE 8 ウィンドウが開き、検索ボックスに「チーズ」と入力します。注: 私は 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 に答える