以下是使用Selenium和Java遍历网页元素,获取网址并将其放入一个列表中的示例代码:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.ArrayList;
import java.util.List;
public class GetURLs {
public static void main(String[] args) {
// 设置 ChromeDriver 路径
System.setProperty("webdriver.chrome.driver", "path_to_chromedriver");
// 实例化 ChromeDriver 对象
WebDriver driver = new ChromeDriver();
// 导航到目标网页
driver.get("https://example.com");
// 使用 CSS 选择器定位所有包含网址的元素
List urlElements = driver.findElements(By.cssSelector("a[href^='http']"));
// 创建一个列表来存储网址
List urls = new ArrayList<>();
// 遍历网址元素并获取网址
for (WebElement element : urlElements) {
String url = element.getAttribute("href");
urls.add(url);
}
// 打印所有网址
for (String url : urls) {
System.out.println(url);
}
// 关闭浏览器
driver.quit();
}
}
在上面的示例代码中,我们首先设置ChromeDriver的路径,然后实例化一个ChromeDriver对象。然后,我们使用get
方法导航到目标网页。
接下来,我们使用CSS选择器定位所有包含网址的元素,使用findElements
方法返回一个包含所有元素的列表。
然后,我们创建一个空的字符串列表来存储网址。使用一个for
循环遍历网址元素,并使用getAttribute
方法获取每个元素的href
属性(网址),并将其添加到列表中。
最后,我们使用另一个for
循环打印所有的网址,并在最后关闭浏览器。
请确保替换代码中的path_to_chromedriver
为您的ChromeDriver的实际路径。您可以从ChromeDriver官网(https://chromedriver.chromium.org/downloads)下载适用于您的Chrome版本的ChromeDriver。
上一篇:遍历元素以获取XML的值
下一篇:遍历元组