工具教程pythonpython自动化配置参数
John Doeselenium 配置参数
每次当selenium启动chrome浏览器的时候,chrome浏览器很干净,没有插件、没有收藏、没有历史记录,这是因为selenium在启动chrome时为了保证最快的运行效率,启动了一个裸浏览器,这就是为什么需要配置参数的原因,但是有些时候我们需要的不仅是一个裸浏览器
selenium启动配置参数接收是ChromeOptions
类,创建方式如下 :
1 2 3 4
| from selenium import webdriver option = webdriver.ChromeOptions() driver = webdriver.Chrome(chrome_options=option) 创建了ChromeOptions类之后就是添加参数,添加参数有几个特定的方法,分别对应添加不同类型的配置项目
|
1 2
| from selenium import webdriver option = webdriver.ChromeOptions()
|
添加启动参数
添加扩展应用
1 2
| option.add_extension() option.add_encoded_extension()
|
添加实验性质的设置参数
1
| option.add_experimental_option()
|
设置调试器地址
1
| option.debugger_address()
|
常用配置参数:
from selenium import webdriver
option = webdriver.ChromeOptions()
添加UA
1
| 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"')
|
指定浏览器分辨率
1
| options.add_argument('window-size=1920x3000')
|
谷歌文档提到需要加上这个属性来规避bug
1
| chrome_options.add_argument('--disable-gpu')
|
隐藏滚动条, 应对一些特殊页面
1
| options.add_argument('--hide-scrollbars')
|
不加载图片, 提升速度
1
| options.add_argument('blink-settings=imagesEnabled=false')
|
浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
1
| options.add_argument('--headless')
|
以最高权限运行
1
| options.add_argument('--no-sandbox')
|
手动指定使用的浏览器位置
1
| options.binary_location = r"C:Program Files (x86)GoogleChromeApplicationchrome.exe"
|
添加crx插件
1
| option.add_extension('d:crxAdBlock_v2.17.crx')
|
禁用JavaScript
1
| option.add_argument("--disable-javascript")
|
设置开发者模式启动,该模式下webdriver属性为正常值
1
| options.add_experimental_option('excludeSwitches', ['enable-automation'])
|
禁用浏览器弹窗
1 2 3 4 5 6
| prefs = { 'profile.default_content_setting_values' : { 'notifications' : 2 } } options.add_experimental_option('prefs',prefs)
|
添加代理 ip
1 2 3
| options.add_argument("--proxy-server=http://XXXXX.com:80")
driver = webdriver.Chrome(chrome_options=chrome_options)
|
其他配置项目参数
指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区
指定缓存Cache路径
指定Cache大小,单位Byte
重置到初始状态,第一次运行
隐身模式启动
禁用Javascript
将地址栏弹出的提示菜单数量改为num个
1
| --omnibox-popup-count="num"
|
修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果
禁止加载所有插件,可以增加速度。可以通过about:plugins页面查看效果
禁用JavaScript,如果觉得速度慢在加上这个
禁用java
启动就最大化
取消沙盒模式
单进程运行
每个标签使用单独进程
每个站点使用单独进程
插件不启用单独进程
禁用弹出拦截
1
| --disable-popup-blocking
|
禁用插件
禁用图像
启动进入隐身模式
启用账户切换菜单
使用pac代理 [via 1/2]
设置语言为简体中文
自定义缓存目录
自定义缓存最大值(单位byte)
自定义多媒体缓存最大值(单位byte)
在工具 栏增加一个书签按钮
启用书签同步
使用缓存
1 2 3
| options.add_argument("--disk-cache-dir=/path/to/cache/folder") options.add_argument("--disable-application-cache") options.add_argument("--disable-cache")
|
参考:https://www.cnblogs.com/sn5200/p/15949796.html