helium的浏览器启动及option配置 - 1
helium的浏览器启动及option配置
前言
helium只支持chrome和firefox两个浏览器,其中option配置是基于selelium来配置的,所以所调用的也是seleium的配置方式
浏览器启动
首先看看源码
# 启动谷歌浏览器
def start_chrome(url=None, headless=False, options=None):
"""
:param url: URL to open.
:type url: str
:param headless: Whether to start Chrome in headless mode.
:type headless: bool
:param options: ChromeOptions to use for starting the browser
:type options: :py:class:`selenium.webdriver.ChromeOptions
"""
return _get_api_impl().start_chrome_impl(url, headless, options)
# 启动火狐浏览器
def start_firefox(url=None, headless=False, options=None):
"""
:param url: URL to open.
:type url: str
:param headless: Whether to start Firefox in headless mode.
:type headless: bool
:param options: FirefoxOptions to use for starting the browser.
:type options: :py:class:`selenium.webdriver.FirefoxOptions`
"""
return _get_api_impl().start_firefox_impl(url, headless, options)
start_chrome:需要传入三个参数 (url:被测系统url地址,headless:是否静默执行,无执行画面,默认关闭,options:浏览器设置参数,使用selenium option配置)
示例1:打开百度
# 全局导入helium所有的api
from helium import *
# 打开被测地址
start_chrome(url="https://cn.bing.com/")
示例2:打开百度并静默执行
# 全局导入helium所有的api
from helium import *
# 打开被测地址
start_chrome(url="https://cn.bing.com/", headless=True)
示例3:打开百度并配置option让窗口最大化
# 全局导入helium所有的api
from helium import *
# 导入option
from selenium.webdriver import ChromeOptions
# 实例化option配置对象
options = ChromeOptions()
# 窗口最大化配置
options.add_argument('--start-maximized')
# 打开百度地址,实例化谷歌浏览器操作对象时,可同时传入被测url地址
# (url=None, headless=False, options=None)
start_chrome(url="https://cn.bing.com/", options=options)
option相关配置参数
# –user-data-dir="[PATH]" 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区。
# –first run 重置到初始状态,第一次运行
# –omnibox-popup-count=”num” 将地址栏弹出的提示菜单数量改为num个。我都改为15个了。
# –user-agent=”xxxxxxxx” 修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果
# –disable-javascript 禁用JavaScript,如果觉得速度慢在加上这个
# –single-process 单进程运行
# –process-per-tab 每个标签使用单独进程
# –process-per-site 每个站点使用单独进程
# –in-process-plugins 插件不启用单独进程
# –disable-popup-blocking 禁用弹出拦截
# –disable-plugins 禁用插件
# –disable-images 禁用图像
# –incognito 启动进入隐身模式
# –enable-udd-profiles 启用账户切换菜单
# –proxy-pac-url 使用pac代理 [via 1/2]
# –lang=zh-CN 设置语言为简体中文
# –disk-cache-dir 自定义缓存目录
# –disk-cache-size 自定义缓存最大值(单位byte)
# –media-cache-size 自定义多媒体缓存最大值(单位byte)
# –bookmark-menu 在工具 栏增加一个书签按钮
# –enable-sync 启用书签同步
# –start-maximized 启动Google Chrome就最大化
# –disable-java 禁止Java
# –no-sandbox 非沙盒模式运行
# --disable-gpu 禁止cpu加速
#使用方式:
#options = ChromeOptions()
#options.add_argument()
常用option配置
# 窗口最大化配置
options.add_argument('--start-maximized')
# 自定义选择chrome.exe路径
options.binary_location = r"{}".format("C:\Program Files\Google\Chrome\Application\chrome.exe")
# 非沙盒运行
options.add_argument('--no-sandbox')
# 关闭gpu加速
options.add_argument('--disable-gpu')
# 关闭w3c规范
options.add_experimental_option('w3c', False)
若学习过程中有人问题都可加qq群交流:1009682660
helium的浏览器启动及option配置 - 1的更多相关文章
- webdriver高级应用- 启动带有用户配置信息的firefox浏览器窗口
由于WebDriver启动FireFox浏览器时会启用全新的FireFox浏览器窗口,导致当前机器的FireFox浏览器已经配置的信息在测试中均无法生效,例如已经安装的浏览器插件.个人收藏夹等.为了解 ...
- 『心善渊』Selenium3.0基础 — 22、使用浏览器加载项配置实现用户免登陆
目录 1.浏览器的加载项配置 2.加载Firefox配置 3.加载Chrome配置 1.浏览器的加载项配置 在很多情况下,我们在登录网站的时候,浏览器都会弹出一个是否保存登录账号的信息.如果我们选择保 ...
- html5手机浏览器启动微信客户端支付实例
html5手机浏览器启动微信客户端支付实例,外部浏览器html5微信支付技术,如何在手机浏览器微信支付,在微信客户端外的移动端网页使用微信支付 首先在微信支付官网https://pay.weixin. ...
- Chrome浏览器启动参数大全(命令行参数)
前言 在开发Web项目当中,浏览器必不可少,而浏览器的启动参数可以帮我们实现很多功能. 常用参数 常用参数请参考下表. 序号 参数 说明 1 --allow-outdated-plugins 不停用过 ...
- Android在浏览器启动APP
要想在浏览器启动APP的方法例如以下: 在须要跳转的ACTIVITY中加入intent-filter的相关信息: <intent-filter> <data android: ...
- springmvc国际化 基于浏览器语言的国际化配置
当前标签: springmvc springmvc国际化 基于浏览器语言的国际化配置 苏若年 2013-10-09 13:03 阅读:305 评论:0 SpringMVC中应用Ajax异步通讯 ...
- sublime text 3 ctrl+b浏览器启动html
sublime text 2 和3 都可以快速设置浏览器启动,本人在这里介绍如何不下插件启动浏览器.第一步:打开Tool-->build system ---> new build sy ...
- Centos7.x:开机启动服务的配置和管理
一.开机启动服务的配置 1.创建服务配置(权限754) vim /usr/lib/systemd/system/nginx.service 文件内容解释 [Unit]:服务的说明Description ...
- 第三百三十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—Scrapy启动文件的配置—xpath表达式
第三百三十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—Scrapy启动文件的配置—xpath表达式 我们自定义一个main.py来作为启动文件 main.py #!/usr/bin/en ...
随机推荐
- P2055 [ZJOI2009]假期的宿舍 题解(二分图)
题目链接 P2055 [ZJOI2009]假期的宿舍 解题思路 因为懒,提供一种不连边,直接根据题目给出的邻接矩阵进行匈牙利算法的思路. \(a[i][j]\)表示\(i\)能不能睡\(j\)的床,需 ...
- java基础详解-集合
一.集合组成 java集合主要由Map和Collection组成,Collection主要类图如下(图片来源于网络,懒得画图): 从上图中能很明显的看出来Collection下主要是Set.List和 ...
- 分子量(JAVA语言)
package 第三章习题; /* * 给出一种物质的分子式(不带括号)求分子量. * 本题分子只包含4种原子,分别为C,H,O,N * 分子量为分别为12.01,1.008,16.00,14 ...
- 妙味课上利用splice进行数组去重为什么要 j--
var arr = [ 1,2,2,4,4,5,8,8,9,0,4,4 ]; for ( var i=0; i<arr.length; i++ ) { for ( var j=i+1; j< ...
- JDK 16 正式发布,一次性发布 17 个新特性…不服不行!
上一篇:Java 15 正式发布, 14 个新特性 JDK 16 正式发布 牛逼啊,JDK 15 刚发布半年(2020/09/15),JDK 16 又如期而至(2021/03/16),老铁们,跟上. ...
- Android Studio 安装及配置
安装时的那些事 •相关链接 [1]:无需翻墙的链接 [2]:Android Studio 安装教程 •从安装到放弃??? 初次接触 Android,并知道了开发 Android APP 的软件--An ...
- SQL 存储过程里调用另一个存储过程
由于创建了一个存储过程,并且要在另一个存储过程里调用这个存储过程所以在网上找了一下相关的代码,现在总结一下,防止以后还会用到 由于这次我写的存储过程只需要返回一个求和的结果,所以我使用了output ...
- SCIP:构造过程抽象--面向对象的解释
心智的活动,除了尽力产生各种简单的认知之外,主要表现为如下三个方面:(1)将若干简单认知组合为一个复合的认识,由此产出各种复杂的认知.(2)将两个认知放在一起对照,不管他们如何简单或者复杂,在这样做时 ...
- 呵呵,Semaphore,就这?
这是并发线程工具类的第二篇文章,在第一篇中,我们分析过 CountDownLatch 的相关内容,你可以参考 一文搞懂 CountDownLatch 用法和源码! 那么本篇文章我们继续来和你聊聊并发工 ...
- "Unmapped Spring configuration files found.Please configure Spring facet."解决办法
最近在学习使用IDEA工具,觉得与Eclipse相比,还是有很多的方便之处. 但是,当把自己的一个项目导入IDEA之后,Event Log提示"Unmapped Spring configu ...