博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Selenium Chrome浏览器的启动以及proxy设置
阅读量:6206 次
发布时间:2019-06-21

本文共 1335 字,大约阅读时间需要 4 分钟。

虽然WebDriver对Firefox的支持最好,之前写的脚本也都在Firefox浏览器运行,但最近项目做了整合,发现新整合的功能不太支持Firefox,而近期也没有计划做浏览器兼容性方面的改进,所以我的自动化脚本要重新修改,运行在都有良好支持的Chrome浏览器上。说了这么多背景,我们就进入正题吧。

1. 首先需要下载chromeDriver.
2. 将下载好的文件解压,将chromedriver.exe拷贝到chrome根目录,一般是在appication目录下
3.可以使用chromeDriver了,如果把chromedriver拷贝到项目根目录就不需要setProperty了,但是我是放到了Chrome根目录下,所以要设置驱动路径。
System.setProperty("webdriver.chrome.driver","C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
WebDriver driver=new ChromeDriver();  //初始化浏览器
4.以上三步后,其实就可以直接进入脚本的编写了。但是有时候根据需要可能设置下代理和端口。虽然我自己的脚本是不需要设置的,它用了默认的proxy和端口。但是之前脚本出了个错误,我就误认为是proxy设置有问题,所以还写脚本对proxy重新设置了下,后来还是没通过,同事帮我分析之后说不用,神奇注释掉代码居然通过了,真是不知道之前的错误哪儿来,好吧,就当是学习了。
通过以下代码可以对运行时的proxy进行设置:
/* String proxyIpAndPort= "localhost:8080";
  DesiredCapabilities cap = new DesiredCapabilities();
  Proxy proxy=new Proxy();
  proxy.setHttpProxy(proxyIpAndPort).setFtpProxy(proxyIpAndPort).setSslProxy(proxyIpAndPort);
  cap.setCapability(CapabilityType.ForSeleniumServer.AVOIDING_PROXY, true);
  cap.setCapability(CapabilityType.ForSeleniumServer.ONLY_PROXYING_SELENIUM_TRAFFIC, true);
  System.setProperty("http.nonProxyHosts", "localhost");
  cap.setCapability(CapabilityType.PROXY, proxy);*/
至于Firefox,它也是每次启动firefox会自动生成一个profile,而不会使用当前Firefox的profile,可以通过FirefoxProfile来设置。暂时就先不写了,如果哪位需要,可以留言。

转载于:https://www.cnblogs.com/amy-2013/p/4615279.html

你可能感兴趣的文章
学习linux系统到底有没捷径?
查看>>
SpringBoot简要
查看>>
定时任务
查看>>
idea使用 git 撤销commit
查看>>
安装mariadb、安装Apache
查看>>
JEESZ-SSO解决方案
查看>>
MyBatis之输入与输出(resultType、resultMap)映射
查看>>
剥开比原看代码09:通过dashboard创建密钥时,前端的数据是如何传到后端的?
查看>>
React 新 Context API 在前端状态管理的实践
查看>>
java B2B2C springmvc mybatis电子商城系统(四)Ribbon
查看>>
树状数组
查看>>
Windows Azure 之服务总线中继服务
查看>>
MySQL 主从同步故障处理-小记
查看>>
有源代码的iphone项目
查看>>
java开发环境:还在配classpath?你out啦!
查看>>
51、YUM安装配置LAMP、phpMyAdmin实战
查看>>
java每日小算法(10)
查看>>
Yeslab现任明教教主ISE课程前七部分免费发布
查看>>
我的友情链接
查看>>
基本概念-数据类型
查看>>