首页 > chrome java插件_selenium启动Chrome配置参数问题

chrome java插件_selenium启动Chrome配置参数问题

每次当selenium启动chrome浏览器的时候,chrome浏览器很干净,没有插件、没有收藏、没有历史记录,这是因为selenium在启动chrome时为了保证最快的运行效率,启动了一个裸浏览器,这就是为什么需要配置参数的原因,但是有些时候我们需要的不仅是一个裸浏览器。

selenium启动配置参数接收是ChromeOptions类,创建方式如下:

from selenium import webdriver

option = webdriver.ChromeOptions()

创建了ChromeOptions类之后就是添加参数,添加参数有几个特定的方法,分别对应添加不同类型的配置项目。

设置 chrome 二进制文件位置 (binary_location)

from selenium import webdriver

option = webdriver.ChromeOptions()



# 添加启动参数

option.add_argument()



# 添加扩展应用 

option.add_extension()

option.add_encoded_extension()



# 添加实验性质的设置参数 

option.add_experimental_option()



# 设置调试器地址

option.debugger_address()

常用配置参数:

from selenium import webdriver

option = webdriver.ChromeOptions()



# 添加UA

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"')



# 指定浏览器分辨率

options.add_argument('window-size=1920x3000') 



# 谷歌文档提到需要加上这个属性来规避bug

chrome_options.add_argument('--disable-gpu') 



 # 隐藏滚动条, 应对一些特殊页面

options.add_argument('--hide-scrollbars')



# 不加载图片, 提升速度

options.add_argument('blink-settings=imagesEnabled=false') 



# 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败

options.add_argument('--headless') 



# 以最高权限运行

options.add_argument('--no-sandbox')



# 手动指定使用的浏览器位置

options.binary_location = r"C:Program Files (x86)GoogleChromeApplicationchrome.exe" 



#添加crx插件

option.add_extension('d:crxAdBlock_v2.17.crx') 



# 禁用JavaScript

option.add_argument("--disable-javascript") 



# 设置开发者模式启动,该模式下webdriver属性为正常值

options.add_experimental_option('excludeSwitches', ['enable-automation']) 



# 禁用浏览器弹窗

prefs = {  

    'profile.default_content_setting_values' :  {  

        'notifications' : 2  

     }  

}  

options.add_experimental_option('prefs',prefs)





driver=webdriver.Chrome(chrome_options=chrome_options)

浏览器地址栏参数:

在浏览器地址栏输入下列命令得到相应的信息

about:version - 显示当前版本



  about:memory - 显示本机浏览器内存使用状况



  about:plugins - 显示已安装插件



  about:histograms - 显示历史记录



  about:dns - 显示DNS状态



  about:cache - 显示缓存页面



  about:gpu -是否有硬件加速



  chrome://extensions/ - 查看已经安装的扩展

f226028dc979a7ee4302957fc2e9498c.png

其他配置项目参数

–user-data-dir=”[PATH]” 

# 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区



  –disk-cache-dir=”[PATH]“ 

# 指定缓存Cache路径



  –disk-cache-size= 

# 指定Cache大小,单位Byte



  –first run 

# 重置到初始状态,第一次运行



  –incognito 

# 隐身模式启动



  –disable-javascript 

# 禁用Javascript



  --omnibox-popup-count="num" 

# 将地址栏弹出的提示菜单数量改为num个



  --user-agent="xxxxxxxx" 

# 修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果



  --disable-plugins 

# 禁止加载所有插件,可以增加速度。可以通过about:plugins页面查看效果



  --disable-javascript 

# 禁用JavaScript,如果觉得速度慢在加上这个



  --disable-java 

# 禁用java



  --start-maximized 

# 启动就最大化



  --no-sandbox 

# 取消沙盒模式



  --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 

# 启用书签同步

更多相关:

  •   当然有部分童鞋反映这样设置了以后,部分css样式表修改了还是不管用,那么我们就需要针对浏览器做点骚操作了: 1.chrome(谷歌浏览器) (1)、F12在调试页面Network中勾选Disable cache (2)、按F5或右键“重新加载”刷新页面内容 (3)、 使用Ctrl+Shift+R或者Ctrl+...

  • 我们的使命是让您了解最新和最酷的Web开发趋势。这就是为什么我们每个月都会发布一些精选的资源,这些资源是我们偶然发现并认为值得您关注的。 1.Tessaract.js 强大的javascript(节点和浏览器)库,用于从图像中提取文本。它能自动检测文本的位置和方向,识别60多种语言,包括中文、阿拉伯语和俄语等。 2.OverlayS...

  • vue 在浏览器控制台怎么调试 谷歌插件vue Devtools 问题: vuejs里面的变量,怎么用浏览器的console查看? 例如,想在chrome里用console.log查看变量$data,会显示undefined。 解决方案: 再main.js里面声明window.Vue = new Vue window.Vue = n...

  • 温馨提示:以下系列的面试题是通过整合网上各位大牛的文章而成,站在巨人的肩膀上,能够让我们更进一步。 1、页面从输入URL到页面加载显示完成,这个过程中都发生了什么? 输入域名地址发送域名地址至DNS服务器并获得对应WEB服务器IP地址与WEB服务器建立TCP连接服务器的永久重定向响应(从http://example.com到http:...