浏览器禁用更新:

  因为selenium对浏览器的支持是有限制的。当浏览器更新到最新版本时,需要下载支持最新版本的插件。有时候selenium还没有更新到支持最新版本的插件,但本地已经更新到最新版本了。这样就比较悲剧了。需要卸载掉浏览器重新安装旧版本。如果及时设置不自动更新。可以很好的解决这个问题。

  禁用chrome浏览器: 控制面板\系统和安全\管理工具\服务\chrome更新服务 禁用
  禁用Firefox浏览器:选项、高级、更新、不检查更新。F10 关于。。。查看版本
  禁用IE浏览器:https://zhidao.baidu.com/question/564473961.html

1、加载chrome浏览器:

package myseleniumtest;
import java.io.File;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions; public class chromeTest extends testBase { public static void main(String[] args) {
// TODO Auto-generated method stub
open_chrome();
}
static {
System.setProperty("webdriver.chrome.driver", "files/chromedriver.exe");
} public static void open_chrome() {
ChromeOptions options = new ChromeOptions();
// options.addArguments("--test-type");
// File file =new File("files/chrome/User Data");
// options.addArguments("user-data-dir="+file.getAbsolutePath());
options.addArguments("--test-type", "--start-maximized");
WebDriver driver = new ChromeDriver(options);
driver.get(strUrl);
} // 加载crx插件
public static void load_plug() {
ChromeOptions op = new ChromeOptions();
op.addExtensions(new File(""));
driver = new ChromeDriver(op);
}
// 根据配置文件夹启动 User Data文件夹在 C:\Users\Administrator\AppData\Local\Google\Chrome\User Data 路径下
public static void loadConfig() {
ChromeOptions options = new ChromeOptions();
File file = new File("files/chrome/User Data");
options.addArguments("user-data-dir=" + file.getAbsolutePath());
options.addArguments("--test-type", "--start-maximized");
WebDriver driver = new ChromeDriver(options);
driver.get(strUrl);
} }

2、加载 firefox浏览器:

package myseleniumtest;

import java.io.File;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxOptions;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.openqa.selenium.firefox.internal.ProfilesIni;
import org.openqa.selenium.remote.DesiredCapabilities; public class firefoxTest extends testBase { public static void main(String[] args) {
// TODO Auto-generated method stub
System.setProperty("webdriver.gecko.driver", "files/geckodriver.exe");
// load_firebug();
load_firebug();
}
//OpenDefault
public static void open_firefox(){ WebDriver driver = new FirefoxDriver();
driver.get(strUrl);
}
//加载插件 about:config
public static void load_firebug(){
FirefoxProfile profile = new FirefoxProfile();
profile.addExtension(new File("files/firefox/firebug@software.joehewitt.com.xpi"));
profile.setPreference("extensions.firebug.currentVersion", "2.0.19");
FirefoxOptions options = new FirefoxOptions();
options.setProfile(profile);
driver = new FirefoxDriver(options); }
public static void exportFile(){
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.download.dir","c:\\");
// 0桌面 1我的下载 2自定义
profile.setPreference("browser.download.folderList",2);
profile.setPreference("browser.helperApps.neverAsk.saveToDisk","browser.helperApps.neverAsk.saveToDisk");
driver = new FirefoxDriver(new FirefoxOptions().setProfile(profile));
driver.get("http://wiki.yslocal.com/pages/viewpage.action?pageId=6719652");
}
//启用功能 在浏览器地址栏输入 about:config
public static void startExtend(){
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("", true);
}
// 启动本机的firefox配置
public static void loadLocalConfig(){
ProfilesIni allProfiles = new ProfilesIni();
FirefoxProfile profile = allProfiles.getProfile("default");
profile.setPreference("extensions.firebug.allPagesActivation", "on");
driver = new FirefoxDriver(new FirefoxOptions().setProfile(profile));
}
//启用其他机器的配置文件
//将A机器上的profiles文件夹拷出来 C:\Users\Administrator\AppData\Local\Mozilla\Firefox
public static void loadOtherConfig(){
File f = new File("files/firefox/Profiles/gsz6831l.default/");
FirefoxProfile profile = new FirefoxProfile(f);
driver = new FirefoxDriver(new FirefoxOptions().setProfile(profile)); } }

3、加载IE浏览器

package myseleniumtest;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities; public class ieTest extends testBase { public static void main(String[] args) {
// TODO Auto-generated method stub }
//关闭保护模式 安全的四个选项 unchecked
public void uncheckedSettings(){
DesiredCapabilities d =DesiredCapabilities.internetExplorer();
d.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
d.setCapability("ignoreProtectedModeSettings",true);
}
public static void open_ie(){
System.setProperty("webdriver.ie.driver","files/IEDriverServer.exe");
WebDriver driver = new InternetExplorerDriver();
driver.get(strUrl);
} }
driver.navigate().back() 后退
driver.navigate().forward() 前进
driver.navigate().refresh() 刷新

selenium3加载浏览器的更多相关文章

  1. Qt加载网页(加载浏览器插件)和制作托盘后台运行(南信大财务报账看号)

    程序模块要添加QNetWork和QWebKit模块: nuistfinancevideo.h文件: #ifndef NUISTFINANCEVIDEO_H #define NUISTFINANCEVI ...

  2. No.11 selenium学习之路之加载浏览器插件for Firefox

    打开帮助 —— 故障排除信息

  3. selenium自动化之加载浏览器的配置文件

    做seleniumUI自动化关于选用哪个浏览器方面,对于我来说,火狐浏览器只是用于定位元素,因为有firebug(注意高版本的火狐已经安装不了这个插件了),而真正执行自动化脚本用的是谷歌,感觉谷歌的速 ...

  4. Blazor-断开连接后重新加载浏览器

    在大多数情况下,Blazor将与以前相同的线路上重新连接到服务器.但有时无法重新连接,需要重新加载web浏览器才能使网站重新工作.如果服务器回收应用程序池,则需要手动重新加载页面在没有调试的情况下在I ...

  5. selenium自动化之加载浏览器配置文件

    化环境:python3.6 + selenium3 当我们做自动化的时候,如果不做任何配置的话打开的浏览器默认是不加载我们的浏览器配置文件的,下面我们来说说如何加载配置文件: 首先不管使用的是火狐浏览 ...

  6. 从url到页面加载浏览器做了什么?

    从输入url到页面加载发生了什么?1.DNS解析DNS解析是一个递归查询的过程.DNS解析的过程就是寻找哪台机器上有你需要资源的过程,当你在浏览器中输入一个地址时,www.baidu.com.其实不是 ...

  7. vue懒加载 && 浏览器高度

    当我们进入首页时,可能有很多条目需要显示,但是如果条目太多,我们全部将之显示出来就会造成性能的消耗,比如,我在第一条就找到了需要的或者我就看前面两条我就不想看后面的了,所以,这时候如果使用全部加载的方 ...

  8. 用selenium自动加载浏览器下载图片

    上一篇用requests这个库进行图片的批量下载,只所以可以这样做,是因为豆瓣提供的XHR的接口API,而且接口返回的数据类型为json格式,所以使用起来非常的方便,但是有时候我们需要分析html格式 ...

  9. selenium模块跳过用户名密码验证码输入,加载浏览器标签和cookie,进行翻页爬虫多页动态加载的数据(js)

    能解决登陆一次后,之后不需要二次登陆的动态加载数据,网页保存的cookie和标签,加入到selenium自动化测试浏览器中 1 from selenium import webdriver 2 imp ...

随机推荐

  1. Elasticsearch安装 + Head插件安装 + Bigdesk插件安装

    一.Elasticsearch安装 1.官网下载zip包:https://www.elastic.co/downloads/elasticsearch 2.解压到自己指定的文件夹 3.运行\bin\e ...

  2. HihoCoder 1121 二分图一•二分图判定

    二分图一•二分图判定 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 大家好,我是小Hi和小Ho的小伙伴Nettle,从这个星期开始由我来完成我们的Weekly. 新年回 ...

  3. HDU3507Print Article (斜率优化DP)

    Zero has an old printer that doesn't work well sometimes. As it is antique, he still like to use it ...

  4. window如何分区

    WD官方技术支持电话:800热线800-820-6682(请于周一至周五工作日期间使用固定电话拨打,不支持手机用户)手机用户请拨打400-627 6682. 链接:https://kuyusm.tma ...

  5. 一般在cmd中报不是合法的命令啥的,都是环境变量没有配置好

    在配置cnpm的时候一定要将环境变量先配置好,配置如下: C:\Program Files\nodejs; C:\Program Files\nodejs\node_global; C:\Progra ...

  6. Angular2使用boostrap和ng-bootstrap总结

    Angular2使用bootstrap有几种方式,本文主要介绍两种方式进行Boostrap样式的使用: 一.直接通过静态文件的方式进行引入: 通过命令新建一个Bootstrap的工程 ng new B ...

  7. iframe添加点击事件

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  8. mybatis参数

    分是不是用@Param注解的这两种情况, 1,使用@Param注解,就不用理parameterType xml文档直接用 字符串的值,若是一个类,class.property 2, 不使用@Param ...

  9. 使用Spring的StingUtils的commaDelimitedListToStringArray来获取字符串数组

    有时候我们需要把一些带逗号的字符串解析为数组或者List.Set,如果自己转换的话比较麻烦,可以直接使用Spring的工具类StringUtils,通过配置文件调用该工具类方法即可.具体看例子 < ...

  10. Nginx 改变错误日志打印级别

    Nginx 改变错误日志打印级别 user  root;worker_processes  2; worker_rlimit_nofile 10240;error_log logs/nginx_err ...