[英]How can I get text from element with Selenium webdriver and Java?
WebElement matchs = driver.findElement(By.xpath("//a[@title='Head to Head']"));
System.out.println(matchs.getText());
在firefox
使用firebug
和firepath
插件,檢查該元素並獲取xpath並將其放在此代碼的雙引號中:
System.out.println(driver.findElement(By.xpath("")).getText());
如果您不知道如何使用Firebug和Firepath,請參考此鏈接
您可以通過css選擇器或xpath選擇器找到元素
通過使用xpath
driver.findElement(By.xpath("//a[@title='Head to Head']"));
通過使用CSS選擇器
driver.findElement(By.cssSelector("span > a[title='Head to Head']"));
或者如果沒有找到匹配項,請嘗試類似這樣的操作
driver.findElement(By.cssSelector("td.cteams.ttgR2>span>a[title='Head to Head']"));
注意:在您的代碼中,您嘗試使用CSS選擇器中的span.Head to Head
.
點代表類,根據您的路徑,您將找到具有“ Head to Head”類名稱的span標簽,該類名稱在您的dom中不存在,因為這是錨標簽的標題。
最初通過Firefox的Firebug
和Firepath
插件獲得了Xpath或CSS路徑
探索一些博客以獲得清晰的了解,您將可以自己創建
同樣參考此鏈接
我認為以上所有答案對您都不起作用,並提供了另一個答案。
我可以看到兩個文本都在“ a”標簽下。 因此,想法是導航到該元素並使用getText() -返回可見的文本。
String word = driver.findElement(By.xpath("//span/a")).getText();
System.out.println(word);
希望這對您有用。
在我所有的測試中,我都使用類似的getAttribute來獲取文本,並且在所有驅動程序上都可以正常工作:
assertEquals(strCity,txtCity.getAttribute(“ value”)));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.