>>分享Java编程技术,对《Java面向对象编程》等书籍提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 23052 个阅读者 刷新本主题
 * 贴子主题:  Java版Selenium使用chrome driver抓取动态网页 回复文章 点赞(0)  收藏  
作者:sunshine    发表时间:2020-01-09 09:14:06     消息  查看  搜索  好友  邮件  复制  引用

前置条件:
mac 10.13.6
chrome浏览器 版本 68.0.3440.84(正式版本) (64 位)
chromedriver驱动

一.chrome浏览器下载
http://www.google.cn/chrome/

二.chromedriver驱动下载
各个版本:http://chromedriver.storage.googleapis.com/index.html
注:chromedriver需要和浏览器版本兼容,否则无法顺利解析


三.安装驱动

解压驱动到目录 C:\mytool\chromedriver.exe

四、Selenium的JavaDoc API文档和软件包下载
http://selenium.dev/selenium/docs/api/java/index.html
Selenium的软件包下载地址

四.java代码
package test.selenium;
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

public class ChromeMain {
    public static void main(String[] args) throws IOException, InterruptedException {
        long time = System.currentTimeMillis();
        // 可省略,若驱动放在其他目录需指定驱动路径
        //System.setProperty("webdriver.chrome.driver", "C:\\mytool\\chromedriver.exe");
        ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.addArguments("--headless");
        ChromeDriver driver = new ChromeDriver(chromeOptions);
        driver.get("http://baidu.com");

        // 获得网页的HTML文档源码
        String source = driver.getPageSource();
        System.out.println(source);
        driver.close();
        System.out.println("耗时:"+(System.currentTimeMillis()-time));
    }
}

maven依赖

我这里使用的版本是2.53.1

        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</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-chrome-driver</artifactId>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-support</artifactId>
        </dependency>

————————————————
原文链接:https://blog.csdn.net/hechaojie_com/article/details/81741524

程序猿的技术大观园:www.javathinker.net

[这个贴子最后由 sunweiqin 在 2020-01-10 12:06:50 重新编辑]
  Java面向对象编程-->输入与输出(下)
  JavaWeb开发-->访问数据库(Ⅰ)
  JSP与Hibernate开发-->通过JPA API检索数据
  Java网络编程-->ServerSocket用法详解
  精通Spring-->绑定表单
  Vue3开发-->绑定CSS样式
  快速理解 函数式编程,响应式编程,链式编程
  深入Java单例模式
  Java泛型中的通配符 T,E,K,V,? 你了解吗
  被迫重构代码,这次我干掉了 if-else
  深入研究java.lang.ThreadLocal类
  超详细的Java运算符修炼手册(优秀程序员不得不知道的运算技...
  java常见的几种调用机制:同步调用,异步调用,回调
  java 支持分词的高性能拼音转换工具,速度是 pinyin4j 的两倍
  Java虚拟机(JVM)的内存结构
  Java入门实用代码:List 循环移动元素
  Java入门实用代码:文件重命名
  正则表达式【匹配非字母和数字】
  Java入门实用代码:删除一个文件目录
  java实现PPT转化为PDF
  中国有多少程序员?现在还值得学java吗?
  更多...
 IPIP: 已设置保密
树形列表:   
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。