2015-11-03 57 views
1

我試圖從隱藏的跨度的HTML頁面獲取文本。使用Selenium和WebDriver從JAVA獲取隱藏文本

<span class="hide"> Nike </span> 

我已經試過這樣的事情:

WebElement element = driver.findElement(By.cssSelector(".product-page.clearfix > .hide > span")); 
String content = (String)((JavascriptExecutor)driver).executeScript("arguments[0].innerHTML;", element); 
product.setBrand(content) 

我也試圖與 「return arguments[0].innerHTML;」,並與 「element.getText()

我明白,我可以使用純JavaScript,但這是一個簡單的例子,我需要使用WebDriver和Java代碼來處理更復雜的頁面。

java.lang.ClassCastException: package.driver.DhlWebDriver cannot be cast to org.openqa.selenium.JavascriptExecutor 
+0

可能的重複[如何使用Selenium WebDriver從隱藏元素中讀取文本?](http://stackoverflow.com/questions/13047056/how-to-read-text-from-hidden-element-with-selenium- webdriver) – JeffC

回答

4

你只需要得到適當的屬性類似以下內容:
element.GetAttribute("textContent");
應該很好地工作。

我猜getAttribute for JAVA - 我在C#中工作。

+0

也適用於Java。 –

0

試試這個它會工作

WebElement element = driver.findElement(By.cssSelector(".product-page.clearfix > .hide > span")); 
String content = (String) ((JavascriptExecutor) driver).executeScript("return arguments[0].innerHTML", element); 
System.out.println(content); 

我用回arguments[0].innerHTML

相關問題