我试图从网页上获取所有链接。试图使用
WebDriver driver = FirefoxDriver();
List<WebDriver> elements = driver.findElements(By.tagName("a"));
,但我得到0个链接,我不明白为什么,有人可以帮助我吗?
我需要从我需要的网址文本中获取一部分。
更新 谢谢,我想找到了我要找的东西:
List<WebElement> elements = driver.findElements(By.tagName("a"));
for (int i = 0; i < elements.size(); i++) {
System.out.println(elements.get(i).getAttribute("href"));
}
答案 0 :(得分:4)
您忘记拨打WebDriver#get
以访问某个页面。
WebDriver driver = FirefoxDriver();
driver.get("www.google.com");
List<WebElement> elements = driver.findElements(By.tagName("a"));
答案 1 :(得分:2)
在提供的代码中没有检索到任何网站。尝试访问网页,然后获取a
元素。同时尝试从List<WebDriver>
更改为List<WebElement>
WebDriver driver = FirefoxDriver();
driver.get("http://www.google.com");
List<WebElement> elements = driver.findElements(By.tagName("a"));
请参阅此示例:http://www.seleniumhq.org/docs/03_webdriver.jsp#introducing-the-selenium-webdriver-api-by-example
以下示例适用于我:
public class SeleniumTest {
public static void main(String[] args) {
WebDriver driver = new FirefoxDriver();
// And now use this to visit Google
driver.get("http://www.google.com");
List<WebElement> elements = driver.findElements(By.tagName("a"));
for (WebElement element : elements) {
System.out.println(element.getText());
}
}
}