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 ...
随机推荐
- 安装VMTools失败的三类解决方法(Windows、Linux、MacOs)
前言 写这篇笔记的原因,是前几天在虚拟机 Vmware 中重新安装了几个操作系统,突然发现 VMTools 这个工具成了一个特殊的问题,以前还没有发现,因为通常它就给你自动安装了.但是大多数时候也是需 ...
- 安全框架Drozer安装和简单使用
安全框架Drozer安装和简单使用 说明: drozer(即以前的Mercury)是一个开源的Android安全测试框架 drozer不是什么新工具,但确实很实用,网上的资料教程都很多了,最近自己项目 ...
- python flake8 代码扫描
一.介绍 Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,flake8是下面三个工具的封装: PyFlakes Pep8 NedBatchelder's McCab ...
- ASP.NET .Core 集成 React SPA 应用
AgileConfig的UI使用react重写快完成了.上次搞定了基于jwt的登录模式(AntDesign Pro + .NET Core 实现基于JWT的登录认证),但是还有点问题.现在使用reac ...
- WM_CLOSE WM_QUIT WM_DESTROY 三者的区别
一 个窗口或者应用程序应该被关闭时发出WM_CLOSE消息,当接收到WM_CLOSE消息时,如果你愿意,向用户提出是否真的退出.你知道让用户作确认或 有错误出现或有什么应该注意的事情发生的时候,往往弹 ...
- 如何优雅地学习计算机编程-C++1
如何优雅的学习计算机编程--C++ 0.导入 如何优雅地学习计算机编程.我们得首先了解编程是什么?打个比方--写信. 大家都知道写信所用的语言双方都懂,这样的信才做到了信息交流,人和计算机也是如此人和 ...
- webgoat白盒审计+漏洞测试
前言 小白,记录,有问题可以交流 乖乖放上参考链接: https://www.freebuf.com/column/221947.html https://www.sec-un.org/java代码审 ...
- RabbitMQ 入门 (Go) - 6. 数据持久化(上)
从本节开始,我介绍一下如何将相关数据持久化到数据库,也就是上图中蓝色的部分. 目前的问题 我先运行 6 个传感器和2 个协调器,这里我使用了批处理文件: 运行后,看一下 RabbitMQ 的管理控制台 ...
- Unity2D项目-平台、解谜、战斗! 1.2战斗组件Defence、Attack
各位看官老爷们,这里是RuaiRuai工作室,一个做单机游戏的兴趣作坊. 接上文,我们定义了两个分别具有"攻击"和"被攻击"语义的组件CanFight和CanB ...
- Linux服务器下JMeter的安装以及Xming的使用
1.需要安装jdk和jmeter的安装包,都可以在官网得到下载.具体的操作按照下面的指令就可以 https://www.oracle.com/cn/java/technologies/javase/j ...