2016-11-02 5 views
1

HTMLを使って要素を見つけることができません:余分なフレームがありませんある要素のXパス

/html/body/div[3]/div/div/div[3]/div/div[3]/div/div[4]/div[2]/div/div/div[1]/div 

:放火犯から

<html> 
< div class="view view-text" style="text-decoration: none; top: 9px; width: 216px; font-family: Kiro-webfont,Helvetica Neue,Arial; font-size: 20px; font-weight: bold; text-align: center; color: rgb(255, 255, 255);">OK</div> 
<\html> 

X-パス。 自分のコードでウィンドウが処理されています。 x-pathを使用していて、次のエラーメッセージで要素を見つけることができません。

16:45:32.443 INFO - 実行中:[要素を検索する:/ html/body/div [3]/div/div/div [3]/div/div [3]/div/div [4]/div [2]/div/div/div [1]/div) 16:45:38.258 WARN - 例外がスローされました org.openqa.selenium.NoSuchElementException:このような要素はありません:要素を見つけることができません/ div/div [3]/div/div [3]/div/div [3]/div/div [3]/div/div [ (プラットフォーム情報:chrome = 54.0.2840.71) (ドライバ情報:chromedriver = 2.25.426923(0390b88869384d6eb0d5d09729679f934aab9eed)、プラットフォーム= Windows NT 6.1.7601 SP1 x86_64 )(警告:サーバはスタックトレース情報を提供しませんでした) コマンドの継続時間または時間t:5.03 seconds http://seleniumhq.org/exceptions/no_such_element.html ビルドインフォメーション:バージョン: '2.53.0'、改訂: '35ae25b'、時間:'2016-03-15 17:00:58 ' システム情報:ホスト: 'CTV-RLEE'、ip:'10 .1.58.129 '、os.name:' Windows 7 '、os.arch:' x86 '、os.version:' 6.1 '、java.version:' 1.8.0_111 ' ドライバ情報:org.openqa.selenium.chrome.ChromeDriver 機能[{applicationCacheEnabled =偽、回転自在=偽、mobileEmulationEnabled =偽、networkConnectionEnabled =偽、クロム= {chromedriverVersion = 2.25.426923(0390b88869384d6eb0d5d097 29679f934aab9eed)、userDataDir = C:¥Users¥sarshad¥AppData¥Local¥Temp¥scoped_dir6280_29240}、takesHeapSnapshot = true、pageLoadStrategy = normal、databaseEnabled = false、handlesAlerts = true、hasTouch スクリーン= false、バージョン= 54.0.2840.71、プラットフォーム= XP、browserConnectionEnabled = falseを、nativeEvents =真、acceptSslCerts =、webStorageEnabled =真、browserName = CHRO 私、takesScreenshot =真、javascriptEnabled =真、cssSelectorsEnabled =真}] セッションID =真locationContextEnabled、真:fbbb0002ff27c39a173c81cca75088cc div/div [3]/div/div [3]/div/div [4]/div [2]/div要素の情報:/DIV/DIV [1]/DIV} sun.reflect.DelegatingConstructorAccessorImpl.newInstanceでsun.reflect.NativeConstructorAccessorImpl.newInstance(不明なソース) でsun.reflect.NativeConstructorAccessorImpl.newInstance0(ネイティブメソッド) で(不明ソース) java.lang.reflect.Constructor.newInstance(不明なソース) at org.openqa.selenium .remote.ErrorHandler.createThrowable(ErrorHandler.java:206) at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java) :678)org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:363で )org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:500で ) org.openqa.seleniumで.By $ ByXPath.findElement(By.java:361) at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:355) at sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド) at sun。 reflect.NativeMethodAccessorImpl.invoke(不明なソース) at sun.reflect.Delegat inMap.Invoke(Unknown Source) at java.lang.reflect.Method.invoke(不明なソース) at org.openqa.selenium.support。events.EventFiringWebDriver $ 2.invoke(EventFiringWebDriver.java:103) (com.sun.proxy)$ Proxy1.findElement(不明なソース) at org.openqa.selenium.support.events.EventFiringWebDriver.findElement(EventFiringWebDriver.java:188) ) at org.openqa.selenium.remote.server.handler.FindElement.call(FindElement.java:48) at org.openqa.selenium.remote.server.handler.FindElement.call(FindElement.java:1) (不明なソース) at org.openqa.selenium.remote.server.DefaultSession $ 1.run(DefaultSession.java:176) at java.util.concurrent.ThreadPoolExecutor.runWorker(不明なソース)ソース) at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source) at java.lang.Thread.run(Unkno wnソース) 16:45:38.263 WARN - 例外:そのような要素がありません:要素を見つけることができません:{"method": "xpath"、 "selector": "/ html/body/div [3]/div/div// div/div/div [}] (セッション情報:chrome = 54.0.2840.71) (ドライバ(1)/ div/div/div [3] info:chromedriver = 2.25.426923(0390b88869384d6eb0d5d09729679f934aab9eed)、プラットフォーム= Windows NT 6.1.7601 SP1 x86_64)(警告:サーバーはスタックトレース情報を提供しませんでした) コマンドの継続時間またはタイムアウト:5.03秒 このエラーに関する説明は、 :http://seleniumhq.org/exceptions/no_such_element.html ビルドインフォメーション:バージョン: '2.53.0'、改訂: '35ae25b'、時間:'2016-03-15 17:00:58 ' システム情報:ホスト:' CTV-RLEE '、ip:'10 .1 os.name: 'Windows 7'、os.arch: 'x86'、os.version: '6.1'、java.version: '1.8.0_111' ドライバ情報:org.openqa.selenium.chrome.ChromeDriver 機能[{applicationCacheEnabled =偽、偽=回転可能、mobileEmulationEnabled =偽、networkConnectionEnabled =偽、クロム= {chromedriverVersion = 2.25.426923(0390b88869384d6eb0d5d097 29679f934aab9eed)、userDataDir = C :\ Users \ sarshad \ AppData \ Local \ Temp \ scoped_dir6280_29240}、takesHeapSnapshot = true、pageLoadStrategy = normal、databaseEnabled = false、handlesAlerts = true、hasTouch 画面= false、バージョン= 54.0.2840.71、プラットフォーム= XP、browserConnectionEnabled = false 、nativeEvents =真、acceptSslCertsは=真、locationContextEnabledは真=真、browserNameはCHRO 私、takesScreenshot =真、javascriptEnabled =真、cssSelectorsEnabled =真}] セッションID = webStorageEnabled =:fbbb0002ff27c39a173c81cca75088cc *要素の情報:{使い方/ div/div [2]/div/div/div [3]/div/div/div [3]/div/div [4] ]/DIV}

答えて

1

あなたは目に見えるこのウィンドウ]ダイアログボタンまで待機してクリックして有効にするWebDriverWaitを使用してみてください: -

new WebDriverWait(driver,10).until(ExpectedConditions.ElementToBeClickable(".//div[text()='OK']"))).click(); 
関連する問題