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 ...
随机推荐
- HDFS的上传流程以及windows-idea操作文件上传的注意
HDFS的上传流程 命令:hdfs dfs -put xxx.wmv /hdfs的文件夹 cd进入到要上传文件的当前目录,再输入hdfs命令上传,注意-put后tab可以自动补全, 最后加上你要上传到 ...
- 给Winform中的TabControl添加更现代的拖拽功能
上周接到一个开发任务,大致是允许APP中的Tab拖动以成为一个独立Tab,脱离之前的TabControl,就是现在Web拖动标签页创建新窗口的功能,现在浏览器必备的功能,应该很简单,然而我司采用的Do ...
- 1-认识c指针
1.指针和内存 c程序在编译后,会以三种形式使用内存 1静态/全局内存 静态声明的变量分配在这里,全局变量也使用这部分内存.这些变量在程序开始运行时分配,直到程序终止时才会消失 2.自动内存 这些变量 ...
- GoldenEye靶机work_through暨CVE-2013-3630复现
前言 备考OSCP,所以接下来会做一系列的OSCP向靶机来练手 靶机描述 I recently got done creating an OSCP type vulnerable machine th ...
- 使用 docker 进行 ElasticSearch + Kibana 集群搭建
在Docker容器中运行Elasticsearch Kibana和Cerebro 机器信息 10.160.13.139 10.160.9.162 10.160.11.171 1. 安装docker和d ...
- 如何使用yolov3训练自己的数据集
博客主要结构 1. 如何在ubuntu18.04上安装yolo 2 .如何配置yolov3 3 .如何制作自己的训练集测试集 4 .如何在自己的数据集上运行yolov3 1. 在ubuntu18.04 ...
- 【笔记】《Redis设计与实现》chapter22 二进制位数组 chapter23 慢查询日志 chapter24 监视器
chapter22 二进制位数组 22.4 BITCOUNT命令的实现 遍历算法 查表算法 variable-precision SWAP算法 chapter23 慢查询日志 Redis的慢查询日志功 ...
- linux-shell 识别当前所使用的shell
echo $SHELL 或者 echo $0
- synchronized锁由浅入深解析
一:几种锁的概念 1.1 自旋锁 自旋锁,当一个线程去获取锁时,如果发现锁已经被其他线程获取,就一直循环等待,然后不断的判断是否能够获取到锁,一直到获取到锁后才会退出循环. 1.2 乐观锁 乐观锁,是 ...
- 火狐兼容selenium版本解决
火狐和selenium不是很好兼容,下面提供一些我所知道的可以兼容的版本: 1. 火狐52+selenium 3.3 +geckodriver v0.15.0 2.火狐59+selenium 3.11 ...