首先得安裝瀏覽器:
yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
查看下你安裝的版本
yum list | grep chrome
然後根據網址:https://npm.taobao.org/mirrors/chromedriver 下載對應版本的驅動
下載完後記得解壓
完事之後貼個案例:
maven
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-remote-driver</artifactId>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-api</artifactId>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
</dependency>
<dependency>
<groupId>net.sourceforge.htmlcleaner</groupId>
<artifactId>htmlcleaner</artifactId>
<version>2.9</version>
</dependency>
java代碼:
public static void main(String[] args) throws Exception{
SpringApplication.run(JavapcApplication.class, args);
System.setProperty(
"webdriver.chrome.driver",
"/home/software/chromedriver"); //指定驅動解壓的地址
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("--headless");//無頁面使用
chromeOptions.addArguments("--no-sandbox");//解決DevToolsActivePort文件不存在的報錯
chromeOptions.addArguments("window-size=1920x3000");//指定瀏覽器分辨率
chromeOptions.addArguments("--disable-gpu");//谷歌文檔提到需要加上這個屬性來規避bug
chromeOptions.addArguments("blink-settings=imagesEnabled=false");//不加載圖片, 提升速度
chromeOptions.setBinary("/usr/bin/google-chrome");//手動指定使用的瀏覽器位置
ChromeDriver driver = new ChromeDriver(chromeOptions);
driver.get("http://top.youku.com/rank/detail/?m=97&type=1&");
// 休眠1s,爲了讓js執行完
Thread.sleep(1000L);
// 網頁源碼
String pageSource = driver.getPageSource();
//使用xpath解析
HtmlCleaner hc = new HtmlCleaner();
TagNode tn = hc.clean(pageSource);
Object[] objects = tn.evaluateXPath("//div[@class='exp-left']/dl/dd[1]/a/text()");
for (Object object : objects) {
System.out.println(object);
}
}