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仓库中找到了高本版的替换再运行就成功了。
java+selenium打开浏览器实现后台静默运行的更多相关文章
- 《手把手教你》系列技巧篇(二十六)-java+ selenium自动化测试-浏览器操作(详细教程)
1.简介 在Web自动化的操作中,我们通常需要使用一些方法来操作浏览器,今天就来学习一下.这一篇宏哥主要是介绍一下,在自动化测试的时候,我们常见的一些浏览器操作有哪些,宏哥将会一一介绍和讲解. 2.浏 ...
- selenium 打开浏览器报错java.lang.NoSuchMethodError: org.openqa.selenium.chrome.ChromeOptions.addArguments([Ljava/lang/String;)
java.lang.NoSuchMethodError: org.openqa.selenium.chrome.ChromeOptions.addArguments([Ljava/lang/Strin ...
- 《手把手教你》系列技巧篇(二十一)-java+ selenium自动化测试-浏览器窗口的句柄(详细教程)
1.简介 今天本来就要分享和讲解三大延时等待的,但是在写作过程中发了问题,会用到这一个知识点,于是就提前介绍一下,以便后边用到了可以更好的理解和掌握.本文就是要介绍如何获得浏览器窗体的句柄或者叫编号, ...
- 1 Selenium打开浏览器
[环境] Selenium3.0.1+Python3.6+unittest win7+IE10 1.打开FireFox浏览器 import unittest from selenium import ...
- python+selenium打开浏览器报错问题
报关键字,升级selenium版本 若打开IE浏览器,停在IE界面,无法跳转对应的地址,设置一下IE的页面缩放,设置为100%
- python+selenium打开浏览器
Firefox(高版本要安装换火狐驱动,47版本以下可不安装) GoogleChrome(需要安装浏览器的驱动插件,驱动到selenium官网下载,目前该浏览器的驱动只有32位的,所以Google安装 ...
- selenium 打开浏览器
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebE ...
- 在Java中打开浏览器
try { Runtime.getRuntime().exec( "explorer http://www.baidu.com"); java.net.URI uri = new ...
- JAVA WEB 前台实时监控后台程序运行
基本思路: 1. 操作状态在类中以静态变量方式(或公共类存储公共变量方式,SESSION方式.COOKIE方式)存在 2. 前台采用AJAX方式激发后台进行业务逻辑操作,并实时更新操作状态信息 3. ...
随机推荐
- Android数据存储之SD卡文件操作
赶上智能手机刚问世时有幸用过的小伙伴都知道,那时候的Android系统是把我们自己买的SD卡作为外部存储的,但是不知道从哪天开始,SD卡就被固化到智能手机的内部了,但是我们仍然把它称为外部存储.我想A ...
- c基本语法和数据类型
一.C语言结构 C 程序主要包括以下部分: 预处理器指令 函数 变量 语句 & 表达式 注释 二.基本语法 1. 分号是语句结束符. 2. 单行注释//.多行注释/* */. 3. 标识符是 ...
- 刷题22. Generate Parentheses
一.题目说明 这个题目是22. Generate Parentheses,简单来说,输入一个数字n,输出n对匹配的小括号. 简单考虑了一下,n=0,输出"";n=1,输出" ...
- laravel本地化扩展包的下载使用
1.下载扩展包 composer require caouecs/laravel-lang:~3.0 2.下载完成之后在根目录下的vendor中caouces\src下就是语言的扩展包 2.1我们复制 ...
- 消息队列和Kafka
------20191211闪
- 堆优化的dijkstra算法
#include<bits/stdc++.h> using namespace std; #define ll long long #define P pair<int,int> ...
- 假期学习【十】首都之窗百姓信件JavaWweb+Echarts图表展示
今天主要对昨天爬取的数据进行处理,处理后用Echart图表展示, 效果如下:
- 在vue项目中使用MD5.js
1.安装 npm install --save js-md5 2.引入 import md5 from 'js-md5'; 3.使用 md5('holle') // bcecb35d0a12baad4 ...
- LeetCode 860. 柠檬水找零 (贪心)
在柠檬水摊上,每一杯柠檬水的售价为 5 美元. 顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯. 每位顾客只买一杯柠檬水,然后向你付 5 美元.10 美元或 20 美元.你必须给 ...
- es报错org.frameworkset.elasticsearch.ElasticSearchException: {"error":{"root_cause":[{"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}],
今天es在保存数据的时候报错 org.frameworkset.elasticsearch.ElasticSearchException: {"error":{"root ...