mb62abf3afb54fb2022-06-18 00:02:10
文章标签chromechrome浏览器加载文章分类虚拟化云计算阅读数1473

前言
1、 Chromeoptions 是Chrome浏览器的参数对象,是配置Chrome启动时属性的类。通过某些参数可以为Chrome浏览器添加启动参数。

2、Chrome浏览器启动时的参数携带过程:启动参数在初始化Chrome浏览器的webdriver对象时传入option,实现按特定参数启动。

3、 Chromeoptions 类是Selenium WebDriver中的一个概念,用于操作Chrome驱动程序的各种属性。

4、 ChromeOptions 是chromedriver支持的浏览器启动选项。

5、源代码位置: .\Lib\site-packages\selenium\webdriver\chrome\options.py

class Options(object):

```pythondef __init__(self):# 设置 chrome 二进制文件位置self._binary_location = ''# 添加启动参数self._arguments = []# 添加扩展应用self._extension_files = []self._extensions = []# 添加实验性质的设置参数self._experimental_options = {}# 设置调试器地址self._debugger_address = None

6、selenium工具操作浏览器默认是不加载任何用户配置,需要我们在初始化浏览器的webdriver对象时手动去加载或者去设置浏览器的初始化信息。7、ChromOptions是一个配置Chrom浏览器启动时属性的类,通过该类可以为Chrome浏览器配置如下参数:设置 chrome 二进制文件位置 (binary_location)
添加启动参数 (add_argument)
添加扩展应用 (add_extension, add_encoded_extension)
添加实验性质的设置参数 (add_experimental_option)
设置调试器地址 (debugger_address)
加载用户所有的Chrome浏览器配置
用Chrome浏览器地址栏输入 chrome://version/ ,查看自己的《个人资料路径》,然后在浏览器启动时,调用该用户配置文件。selenium工具启动Chrome浏览器时配置选项详解_chrome浏览器代码如下:selenium工具在初始化Chrome浏览器webdriver对象时已经加载了用户配置```python
```python
#coding=utf-8from selenium import webdriveroption = webdriver.ChromeOptions()
option.add_argument('--user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\User Data') # 设置成用户自己的数据目录driver = webdriver.Chrome(chrome_options=option)

修改浏览器User-Agent用户代理信息(模拟移动终端信息)(已达到伪装浏览器的效果)
代码如下:伪装浏览器为手机端访问某网站移动设备user-agent表格:​ ​http://www.fynas.com/ua​​代码实例1:```python
```python
#coding=utf-8from selenium import webdriveroption = webdriver.ChromeOptions()
option.add_argument('--user-agent=iphone')
driver = webdriver.Chrome(chrome_options=option)driver.get('http://www.taobao.com/')

.
代码实例2:```python
# 通过设置user-agent,用来模拟移动设备# 比如模拟 android QQ浏览器```python
options.add_argument('user-agent="MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1"')

```python
# 模拟iPhone 6
options.add_argument('user-agent="Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"')指定selenium工具操作Chrome浏览器时下载文件的路径
代码实例1:```python
option = webdriver.ChromeOptions()

```python
# 设定下载文件的保存目录为D盘的D:\downloadFile
prefs = {"download.default_directory":"D:\download"}
# 将自定义设置添加到chrome配置对象实例中
```python
option.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(options=option, executable_path=CHROME_DRIVER_PATH)
driver.maximize_window()

代码实例2:```python
```python
# coding=utf-8
from selenium import webdriverdriver_path = (r'xx/chromedriver.exe')  # 驱动位置
prefs = {'profile.default_content_settings.popups': 0, 'download.default_directory': '默认下载路径'}  # 设置下载文件存放路径,这里要写绝对路径options = webdriver.ChromeOptions()options.add_experimental_option('prefs', prefs)options.add_argument('headless')    # 浏览器隐式启动driver = webdriver.Chrome(executable_path=driver_path, options=options)

设置selenium工具操作Chrome浏览器时的默认编码方式```python
```python
# 设置默认编码为 utf-8,也就是中文from selenium import webdriveroptions = webdriver.ChromeOptions()options.add_argument('lang=zh_CN.UTF-8')driver = webdriver.Chrome(chrome_options = options)

设置selenium工具操作Chrome浏览器---禁止图片加载(一般用于爬虫,加快访问速度)(不加载图片的情况下,可以提升爬取速度)```python```python
# 禁止图片的加载
from selenium import webdriverchrome_options = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)

```python```python
# 启动浏览器,并设置好wait
browser = webdriver.Chrome(chrome_options=chrome_options)

设置不弹出自动化提示
代码如下:```python```python
chrome_options = webdriver.ChromeOptions()chrome_options.add_argument('disable-infobars')driver = webdriver.Chrome(chrome_options = chrome_options)

selenium工具启动Chrome浏览器时配置选项详解_加载_02


设置selenium操作Chrome浏览器后台运行```python
```python
option = webdriver.ChromeOptions()option.add_argument('headless')

Chrome浏览器设置开发者模式

options = webdriver.ChromeOptions()options.add_experimental_option('excludeSwitches', ['enable-automation'])self.browser = webdriver.Chrome(executable_path=chromedriver_path, options=options)

其他配置
登录后复制 ```python
```python
options.add_argument('--disable-infobars') # 禁止策略化options.add_argument('--no-sandbox') # 解决DevToolsActivePort文件不存在的报错options.add_argument('window-size=1920x3000') # 指定浏览器分辨率options.add_argument('--disable-gpu') # 谷歌文档提到需要加上这个属性来规避bugoptions.add_argument('--incognito') # 隐身模式(无痕模式)options.add_argument('--disable-javascript') # 禁用javascriptoptions.add_argument('--start-maximized') # 最大化运行(全屏窗口),不设置,取元素会报错options.add_argument('--disable-infobars') # 禁用浏览器正在被自动化程序控制的提示options.add_argument('--hide-scrollbars') # 隐藏滚动条, 应对一些特殊页面options.add_argument('blink-settings=imagesEnabled=false') # 不加载图片, 提升速度options.add_argument('--headless') # 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败options.binary_location = r"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" # 手动指定使用的浏览器位置

selenium工具启动Chrome浏览器时配置选项详解相关推荐

  1. selenium中启动chrome浏览器时加载插件

    使用selenium启动的chrome浏览器,一般是干净的浏览器,如果需要使用某个插件,那么启动浏览器时,就需要加载插件, 代码如下: import java.io.File; import org. ...

  2. selenium中启动firefox浏览器时设置代理、加载配置文件、加载某个插件以及firefox没有安装在默认路径下的代码写法

    selenium 中启动firefox浏览器的六种方式,所用的是java 1.如果浏览器没有安装在默认路径下,则用 System.setProperty("Webdriver.firefox ...

  3. menuconfig 配置选项详解

    转自:http://www.blog.chinaunix.net/uid-15887868-id-2758315.html 在menuconfig中配置: 详细介绍内核配置选项及删改情况 第一部分:全 ...

  4. opencv——opencv配置选项详解

    一.介绍 1.OpenCV (Open Source Computer Vision Library) is released under a BSD license and hence it's f ...

  5. Linux内核配置选项详解

    第一部分 01.Code maturity level options ---> 代码成熟等级选项 01.01. [ ] Prompt for development and/or incomp ...

  6. Linux 2.6 menuconfig内核编译配置选项详解

    Code maturity level options 代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未 ...

  7. Linux kernel内核编译配置选项详解

    转载于:http://lamp.linux.gov.cn/Linux/kernel_options.html 作者:金步国 Code maturity level options 代码成熟度选项 Pr ...

  8. 搭建python selenium 自动化测试框架_Python3+Selenium2完整的自动化测试框架实现(二):IE和Chrome浏览器驱动配置...

    上一篇写了自动化测试需要的最基础环境配置,地址:https://www.cnblogs.com/tdp0108/p/10412073.html 当前市面上很多公司开发的应用软件都是BS架构,即基于浏览 ...

  9. Selenium启动Chrome浏览器提示“请停用以开发者模式运行的扩展程序”的解决办法

    安装了selenium,python运行下面代码: from selenium import webdriverbrowser = webdriver.Chrome() browser.get('ht ...

最新文章

  1. leetcode--无重复字符的最长子串--python
  2. 线上学python哪家好-0基础学python,打算找培训机构,是线上好还是线下好?
  3. PHP学习:字符串操作和正则表达式
  4. P2580-于是他错误的点名开始了【Trie,字符串】
  5. 决策树之 GBDT 算法 - 回归部分
  6. 【每日蓝桥】2、一三年省赛JavaC组真题“组素数”
  7. 人工智能 VS 机器学习 VS 深度学习
  8. 数字信号处理--7.4--数字滤波器
  9. Attention机制的小理解
  10. 联想微型计算机beta2,联想上网本升级IdeaPad S10-2
  11. 天正的计算机快捷命令大全,天正建筑命令快捷键大全
  12. 【应用时间序列分析】第一章 时间序列分析简介
  13. 使用Python连接谷歌邮箱发送邮件
  14. 【笔记分享】Android TV 红外蓝牙遥控器添加
  15. netbeans如何导入java项目_netbeans导入java项目
  16. 阿里云 x86计算机,什么是x86服务器?x86是多少位系统?
  17. STM32F103 读写内部FLASH—学习笔记(野火)
  18. 老猪带你玩转自定义控件三——sai大神带我实现ios 8 时间滚轮控件
  19. CORS跨域资源共享(二):详解Spring MVC对CORS支持的相关类和API【享学Spring MVC】
  20. Netty网络编程(三):Channel详解

热门文章

  1. Linux下使用命令解压.war文件的问题
  2. MySQL 如何隐藏客户姓名、手机号或者身份证号中的部分信息
  3. 钉钉实现ISV特殊接口调用
  4. 扩展屏 自定义分辨率方法
  5. CCS10,安装SDK后,软件无法识别问题
  6. 手把手安装Origin软件
  7. 局域网联机_343分享大量《光环 无限》情报 本地分屏与局域网联机都不会少
  8. linux反序排列文件,关于linux vim命令 总结
  9. python爬虫进阶-滑块验证码破解(bilibili)
  10. UCGUI中的实现透明窗体的原理