java+selenium打开浏览器实现后台静默运行

 简介:java selenium搭建无界面浏览器

PhantomJS是一个基于Webkit的"无界面"(headless)浏览器,它会把网站加载到内存并执行页面上的JavaScript,因为不会展示图形界面,所以运行起来比完整的浏览器更高效。

1、https://phantomjs.org/download.html

下载windows版本phantomJS

2、解压下载的文件,bin目录下会有phantomjs.exe文件

将exe文件放入你的项目文件夹下(或者直接放在下载目录也行,配置的时候路径不要配错就行)

我自己是放在项目下的driver文件夹下

 3、在pom.xml文件中配置所需要的jar包,首先需要在maven中找到phantomDriver,我选择最新版本

 pom.xml文件配置:

<!-- https://mvnrepository.com/artifact/com.codeborne/phantomjsdriver -->
<dependency>
    <groupId>com.codeborne</groupId>
    <artifactId>phantomjsdriver</artifactId>
    <version>1.4.4</version>
</dependency>

4、测试代码

package Day3;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.phantomjs.PhantomJSDriver;
import org.testng.annotations.Test;

public class PhantomjsTest {
//    后台打开浏览器,相当于最小化浏览器执行脚本
    @Test
    public void pjsTest() throws InterruptedException {
//   此处是加载phantomjs.exe配置,放在那里就写哪里的路径       
     System.setProperty("phantomjs.binary.path","G:\\javaTest\\drivers\\phantomjs.exe"); WebDriver driver = new PhantomJSDriver(); driver.get("http://www.baidu.com"); driver.findElement(By.id("kw")).sendKeys("phantomJS"); Thread.sleep(3000); // 获取title String title = driver.getTitle(); System.out.println(title); driver.quit(); } }

 以上测试成功

 

ps:在成功之前遇到另一个坑,由于不太懂java代码,运行测试代码时报的错java.lang.NoSuchMethodError,百度了很久。

终于找到了有用的信息“java.lang.NoSuchMethodError其实是java项目最常见的问题之一,一般是由于引用的jar包版本过低引起的”,然后我发现自己使用的phantomjsdriver的jar包版本(1.3.1)确实很低,后来在maven仓库中找到了高本版的替换再运行就成功了。

转载于:https://www.cnblogs.com/wulixia/p/11480328.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值