关于Maven
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.15.3</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
JDK 1.8
114版本以前可以通过下面的下载地址进行下载:http://chromedriver.storage.googleapis.com/index.html
在官网上可以看到,从M115开始放在了 https://googlechromelabs.github.io/chrome-for-testing/
电脑浏览器版本要对应 124开头就124的
代码实现 下面是一秒触底一次
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
public static void main(String[] args) {
// 设置ChromeDriver的路径
System.setProperty("webdriver.chrome.driver", "/Users/mac/workspace/chromedriver-mac-x64124/chromedriver");
// 初始化Chrome浏览器实例
ChromeOptions options = new ChromeOptions();
WebDriver driver = new ChromeDriver(options);
// 打开目标网页
driver.get("https://www.dongchedi.com/auto/library/x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x");
// 模拟滚动操作,这里我们直接滚动到页面底部
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollTo(0, document.body.scrollHeight)");
// 等待加载完成,可以通过检查某些元素的出现来判断
// WebElement loadingMore = driver.findElement(By.id("loading-more"));
// while (loadingMore.isDisplayed()) {
int a = 0;
while (true) {
// 执行加载更多的操作
// loadingMore.click();
// 等待一会儿,让加载动作完成
try {
Thread.sleep(1000);
// 再次滚动到底部
js.executeScript("window.scrollTo(0, document.body.scrollHeight)");
if (a > 10) {
break;
} else {
a++;
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
// 解析页面HTML
String pageSource = driver.getPageSource();
Document doc = Jsoup.parse(pageSource);
System.out.println("解析。。。。。。");
// 处理doc中的内容
System.out.println(doc.title());
// 关闭浏览器
driver.quit();
}