2016-02-14 95 views
2

我需要能夠點擊一個鏈接(我正在使用Selenium和Java)。我正在使用xpath搜索鏈接,但由於某種原因,我沒有獲得大部分的網頁,只是一堆空白。在圖片中,您可以看到我正在尋找的突出顯示的鏈接。XPATH問題。無法讀取部分html

我想:

System.out.println(driver.findElement(By.xpath("//*[@class='titre_1']/a")).getText()); 
System.out.println(driver.findElement(By.xpath("//*[@id='li-7']/div/a")).getText()); 

我得到:org.openqa.selenium.NoSuchElementException:沒有這樣的元素:找不到元素

如果我做的:

System.out.println(driver.findElement(By.xpath("//*")).getText()); 

我只從頁面獲得幾個元素和一堆空白。什麼可能是錯的?

請幫忙。我無法適應整個html源代碼向您展示。我希望沒關係。

html source pic

+0

你可以檢查它是否是一個iframe內或沒有? – Buaban

+0

我發現在我正在尋找的鏈接之外有一個iframe。我該如何切換到它?謝謝:) – Bubu

+0

它有一個iframe ID。 – Bubu

回答

1

如果該元素是一個iframe裏面,你可以通過切換到iframe中,然後調用findElement得到它。請參見下面的代碼:

WebElement iframeElement = driver.findElement(By.id("id_of_the_iframe")); 
driver.switchTo().frame(iframeElement); 

然後你可以找到你的XPath元素:

System.out.println(driver.findElement(By.xpath("//*[@class='titre_1']/a")).getText()); 
+0

謝謝..這是解決方案! – Bubu