add_argument()方法基本参数使用
selenium做web自动化时我们想要通过get打开一个页面之前就设置好一些基本参数,需要
通过add_argument()方法来设置,下面以一个简单的不展示窗口为例。
option = webdriver.ChromeOptions() # 实例化ChromeOptions
option.add_argument('--headless') # 设置无窗口模式
driver = webdriver.Chrome(options=option) # 实例化Chrome
driver.implicitly_wait(10)
driver.get("https://www.baidu.com/")
除了headless外,还有如下几种参数最常用的
option.add_experimental_option("excludeSwitches", ["enable-automation"]) # 禁止浏览器被监控提示
option.add_argument("--user-agent=' '") # 设置请求头user-agent
option.add_argument('--start-maximized') # 设置窗口最大化
option.add_argument('--window-size=200,200') # 设置窗口大小
option.add_argument('--incognito') # 无痕模式
option.add_argument('--hide-scrollbars') # 隐藏滚动条
option.add_argument('--disable-javascript') # 禁用js
option.add_argument('--blink-settings=imagesEnabled=false') # 不加载图片(拦截图片)
option.add_argument('--disable-gpu') # 禁用gpu加速
option.add_argument(r'--user-data-dir=C:\Users\v_lihongtao\AppData\Local\Google\Chrome\User Data1') # 打开窗口保存登录态
prefs = {'profile.default_content_settings.popups': 0, 'download.default_directory': 'd:\\'}
option.add_experimental_option('prefs', prefs) # 设置下载文件时的路径
这里需要注意的是禁止浏览器被监控的提示用的是add_experimental_option()方法。
打开窗口保持登录态需找到浏览器安装目录下复制user data路径,userdata就是你当前浏览器所处的状态,为了方便区分,我们可以先关闭浏览器所有的窗口,然后复制userdata文件更改成userdata1,然后添加后--user-data-dir下。
add_argument()方法基本参数使用的更多相关文章
- Java:方法的参数是传值还是传引用
Java中方法的参数总是采用传值的方式. 下列方法欲实现对象的交换,但实际上是不能实现的. public void swap(simpleClass a,simpleClass b){ simpleC ...
- MVC学习系列2--向Action方法传递参数
首先,新建一个web项目,新建一个Home控制器,默认的代码如下: public class HomeController : Controller { // GET: Home public Act ...
- CLR via C# 读书笔记---常量、字段、方法和参数
常量 常量是值从不变化的符号.定义常量符号时,它的值必须能在编译时确定.确定后,编译器将唱两只保存在程序集元数据中.使用const关键字声明常量.由于常量值从不变化,所以常量总是被视为类型定义的一部分 ...
- Atitit 记录方法调用参数上下文arguments
Atitit 记录方法调用参数上下文arguments 1.1. java java8 新的对象Parameter LocalVariableTable 本地变量表 MethodParamete ...
- JavaScript中以一个方法作为参数的写法
前言,我们写js的时候,经常会看到一些方法,比如说: $("#ids").click(function( alert("Click me"); )); ---- ...
- C#中方法的参数的四种类型
C#中方法的参数有四种类型: 1. 值参数类型 (不加任何修饰符,是默认的类型) 2. 引用型参数 (以ref 修饰符声明) 3. 输出型参数 (以out 修 ...
- XMLHTTP中setRequestHeader方法和参数
注意:在FF里面需要将open方法放在setRequestHeader之前 一.为何要用到setRequestHeader 通 常在HTTP协议里,客户端像服务器取得某个网页的时候,必须发送一个HTT ...
- SpringMVC的Controller方法的参数不能直接绑定List、Set、Map
List需要绑定在对象上,而不能直接写在Controller方法的参数中. http://www.iteye.com/topic/973918
- CLR via C#深解笔记四 - 方法、参数、属性
实例构造器和类(引用类型) 构造器(constructor)是允许将类型的实例初始化为良好状态的一种特殊方法.构造器方法在“方法定义元数据表”中始终叫.ctor. 创建一个引用类型的实例时: #1, ...
- 详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析]
目录 前言 现象 源码分析 HandlerMethodArgumentResolver与HandlerMethodReturnValueHandler接口介绍 HandlerMethodArgumen ...
随机推荐
- 日常问题杂记-updating
python3新式类的解析顺序-C3算法由来 - mro-resolution-order canvas文本绘制 - 参考链接 高性能渲染大批量数据 - 参考链接 virtualized list - ...
- DNS--简介&&解析过程
1 功能 将域名解析为IP地址 基本解决IP难于记忆的问题 也可以将IP地址解析为域名 2 域名 由一连串用点(.)分隔的字符串组成的 标识计算机在网络中的电子方位的 3 存储位置 linux /et ...
- 【每日一题】11.黑白树 (树上DFS)
补题链接:Here 题目描述 一棵 \(n\) 个点的有根树,\(1\) 号点为根,相邻的两个节点之间的距离为 \(1\) .树上每个节点 \(i\)对应一个值\(k[i]\).每个点都有一个颜色,初 ...
- Spring七种事务传播行为与五种事务隔离级别
一.事务的传播行为:通过Propagation定义: <!-- 配置事务通知 --><tx:advice id="txAdvice" transaction-ma ...
- 实现不限层级的Element的NavMenu
做管理后台开发的时候,需要用到Element的NavMenu组件,于是乎,翻开文档,大致是这样实现的. <el-menu> <el-menu-item index="1&q ...
- java进阶(27)--HashSet与TreeSet
一.HashSet: 1.特点:无序不可重复,实际上为放入HashMap中的key部分. 2.举例说明:
- 【lvgl-micropython】官方源码之ports/unix 编译报错
lv_micropython/ports/unix make 报错 编译环境如下 这是缺少SDL2库导致的 sudo apt-get install libsdl2-2.0 sudo apt-get ...
- [java] - servlet路径跳转
Index.jsp <a href="servlet/HelloServlet">servlet/HelloServlet</a><br> &l ...
- 如何部署两个JMS网关,形成双机热备
大家使用JMS的过程中,可能会留意到,不管是微服务在注册时,还是RemoteClient构造时,所指向的网关都是一个NetAddress数组,之所以网关地址是多个,而不是一个,那是因为网关是一个双击热 ...
- [转帖]Oracle中为什么需要NCHAR
https://zhuanlan.zhihu.com/p/668402759 Oracle中已经有了char.varchar2等字符类型,为什么又弄出一个nchar.nvarchar2? Oracle ...