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 ...
随机推荐
- Java面向对象(一些问题)
2. Java 面向对象 2.1. 类和对象 2.1.1. 面向对象和面向过程的区别 面向过程 :面向过程性能比面向对象高. 因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量 ...
- Java 8的这些新特性,不一样的全新版本(万字长文详细说明)
目录 1.Lambda表达式 2.Stream API 2.1 入门介绍 2.2.什么是Stream流 2.3.Stream的创建 ①.通过Collection接口获取 ②.由数组创建流 ③.由值创建 ...
- Cookie与Session的安全性
说到cookie与session我们首先要说一下为什么要引入这两个东西,这两个多西到底是干什么的 起源 由于HTTP协议使无状态的: 每一次请求都是新的请求,不会记得之前通信的状态 客户端与服务端的一 ...
- 攻防世界 reverse Replace
Replace 湖湘杯2018 查壳upx,手动脱壳,修复IAT,去掉重定向便可以运行. ida查看,流程清晰.关键函数check_E51090. int __cdecl main(int argc, ...
- 一文彻底搞懂JS前端5大模块化规范及其区别
码文不易,转载请带上本文链接,感谢~ https://www.cnblogs.com/echoyya/p/14577243.html 目录 码文不易,转载请带上本文链接,感谢~ https://www ...
- WPF3D立方体图形展开动画思路
WPF3D立方体图形展开动画 效果图: 规定: 立方体中心为(000),棱长为2,则(111)(-1-1-1)等1,-1三维组合的八个点为其顶点 坐标系: 补充: WPF 3D 分为中心对称旋转(Ro ...
- Android学习之启动活动的最佳写法
•开始热身 通过之前的学习,我们现在可以很容易的启动一个活动: 首先通过 Intent 构造出当前的 "意图",然后调用 startActivity() 方法将活动启动起来: ...
- vue之mixin理解与使用
使用场景 当有两个非常相似的组件,除了一些个别的异步请求外其余的配置都一样,甚至父组件传的值也是一样的,但他们之间又存在着足够的差异性,这时候就不得不拆分成两个组件,如果拆分成两个组件,你就不得不冒着 ...
- IndexError: list index out of range Python常见错误
引用超过list最大索引,此错误非常常见,注意列表的元素个数 ----------------------------------------------
- HTML(〇):简介导读
网页 什么是网页 网站(Website):是指在因特网上根据一定的规则,使用HTML(标准通用标记语言)等工具制作的用于展示特定内容相关网页的集合. 网页(webpage):是网站中的一页,通常是HT ...