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实现下载器(以及创建一个URL对象)
java实现下载器(以及创建一个URL对象) 1.思路讲解: (1)注意路径:是网络路径噢 (2)创建创建网路协议对象(远程对象):HttpURLConnection urlConnection (3 ...
- 关于java的访问修饰符权限
作用域 public protected default private 同一个类 yes yes yes yes 同一个包 yes yes ...
- python3 byte,int,str转换
1 # bytes 与 int 2 b=b'\x01\x02' 3 num=int.from_bytes(b,'little') 4 print('bytes转int:',num) 5 6 b1=nu ...
- MyBatis工程搭建&MyBatis实现Mapper配置查询
一.MyMyBatis工程搭建 新建Maven项目:mybatis-demo 准备数据源 1 # 删除mybatis_demo数据库 2 drop database if exists mybatis ...
- Android学习之活动的最佳实践
•问题的起源 先来模拟一个场景:打开一个 App,最先映入眼帘的是主活动(MainActivity),在该活动中给用户提供了一个 Button, 用户点击该 Button 实现由 MainActivi ...
- PaddleOCR详解
@ 目录 PaddleOCR简介 环境配置 PaddleOCR2.0的配置环境 Docker 数据集 文本检测 使用自己的数据集 文本识别 使用自己的数据集 字典 自定义字典 添加空格类别 文本角度分 ...
- 如何快速编写一个微信Api?
概述 Magicodes.Wx.Sdk致力于打造最简洁最易于使用的微信Sdk,逐步包括公众号Sdk.小程序Sdk.企业微信Sdk等,以及Abp VNext集成. 本篇将侧重于讲述如何向Magicode ...
- Hadoop学习笔记—Yarn
目录 一些基本知识 ResourceManager 的恢复 Resource Manager的HA YARN Node Labels YARN Node Attributes Web Applicat ...
- libnet的使用详解
最近搬砖需要对libnet进行介绍在这里对知识进行汇总. 1.libnet简介 在libnet出现以前,如果要构造数据包并发送到网络中,程序员要通过一些复杂的接口来处理.libnet的出现,为程序员提 ...
- 集群部署时的分布式session如何实现?
session是啥?浏览器有个cookie,在一段时间内这个cookie都存在,然后每次发请求过来都带上一个特殊的jsessionid cookie,就根据这个东西,在服务端可以维护一个对应的sess ...