美文网首页我爱编程
Selenium在Windows7上的系统搭建

Selenium在Windows7上的系统搭建

作者: 飞狗未来 | 来源:发表于2018-08-07 13:13 被阅读0次

    selenium介绍

    Selenium自动化浏览器。就是这样!你用那种方式做什么完全取决于你自己。首先,它是为了测试目的自动化web应用程序,但肯定不限于此。无聊的基于web的管理任务也可以实现自动化。

    Selenium获得了一些最大的浏览器厂商的支持,这些厂商已经采取(或正在采取)步骤使Selenium成为浏览器的原生部分。它也是无数其他浏览器自动化工具、api和框架的核心技术。

    资料链接

    selenium官方网站
    ChromeDriver下载地址
    Firefox Driver下载地址

    Maven工程

    pom.xml配置

    <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-server</artifactId>
            <version>3.13.0</version>
    </dependency>
    

    Java代码

     public static void main( String[] args )
        {
            WebDriver driver = null;
            
            System.setProperty("webdriver.chrome.driver", "G:/crawler/chromedriver/2.40/chromedriver.exe"); 
            driver = new ChromeDriver();  
                    
            //打开登录页面
            driver.get("https://www.ccc.org.cn/jis/front/login.do");
           
            //手动登录
            try {
                Thread.sleep(30000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    

    Chromedriver与chrome浏览器版本匹配情况

    最新进展关注chromedriver官方版本列表

    chromedriver版本 支持的Chrome版本
    v2.41 v67-69
    v2.40 v66-68
    v2.39 v66-68
    v2.38 v65-67
    v2.37 v64-66
    v2.36 v63-65
    v2.35 v62-64
    v2.34 v61-63
    v2.33 v60-62
    v2.32 v59-61
    v2.31 v58-60
    v2.30 v58-60
    v2.29 v56-58
    v2.28 v55-57
    v2.27 v54-56
    v2.26 v53-55
    v2.25 v53-55
    v2.24 v52-54
    v2.23 v51-53
    v2.22 v49-52
    v2.21 v46-50
    v2.20 v43-48
    v2.19 v43-47
    v2.18 v43-46
    v2.17 v42-43
    v2.13 v42-45
    v2.15 v40-43
    v2.14 v39-42
    v2.13 v38-41
    v2.12 v36-40
    v2.11 v36-40
    v2.10 v33-36
    v2.9 v31-34
    v2.8 v30-33
    v2.7 v30-33
    v2.6 v29-32
    v2.5 v29-32
    v2.4 v29-32

    Maven的坑(Maven偷梁换柱你的JAR包)

    我尝试了很多selenium的版本3.4.0\3.6.0\3.7.1\3.13.0等,对应的chrome浏览器版本也都重新安装,单都是报了一样的错误(下方所示)。在网上查询,都没有得到想要的结果,从新建了一个Maven工程,只引进了selenium依赖,比较纯洁,没有干扰。结果就可以启动chrome浏览器了。反过头去看原来的maven工程,发现selenium依赖的guava Jar包,被其他依赖给神不知鬼不觉的替换了,使用了不同的版本。一直不知道Maven还有这种偷梁换柱的功能,所以千万不要Maven偷换你的JAR包。

    Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:125)
        at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:35)
        at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:156)
        at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:346)
        at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:91)
        at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
        at com.cn.tools.crawler.cnccbm.cnccbm_ChromeDriver.oneCrawler(cnccbm_ChromeDriver.java:96)
        at com.cn.tools.crawler.cnccbm.cnccbm_ChromeDriver.main(cnccbm_ChromeDriver.java:272)
    

    相关文章

      网友评论

        本文标题:Selenium在Windows7上的系统搭建

        本文链接:https://www.haomeiwen.com/subject/imjovftx.html