zoukankan      html  css  js  c++  java
  • selenium启动Chrome配置参数问题

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

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

    1 from selenium import webdriver
    2 option = webdriver.ChromeOptions()

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

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

     1 from selenium import webdriver
     2 option = webdriver.ChromeOptions()
     3 
     4 # 添加启动参数
     5 option.add_argument()
     6 
     7 # 添加扩展应用 
     8 option.add_extension()
     9 option.add_encoded_extension()
    10 
    11 # 添加实验性质的设置参数 
    12 option.add_experimental_option()
    13 
    14 # 设置调试器地址
    15 option.debugger_address()

    常用配置参数:

     1 from selenium import webdriver
     2 option = webdriver.ChromeOptions()
     3 
     4 # 添加UA
     5 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"')
     6 
     7 # 指定浏览器分辨率
     8 options.add_argument('window-size=1920x3000') 
     9 
    10 # 谷歌文档提到需要加上这个属性来规避bug
    11 chrome_options.add_argument('--disable-gpu') 
    12 
    13 # 隐藏滚动条, 应对一些特殊页面
    14 options.add_argument('--hide-scrollbars')
    15 
    16 # 不加载图片, 提升速度
    17 options.add_argument('blink-settings=imagesEnabled=false') 
    18 
    19 # 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
    20 options.add_argument('--headless') 
    21 
    22 # 以最高权限运行
    23 options.add_argument('--no-sandbox')
    24 
    25 # 手动指定使用的浏览器位置
    26 options.binary_location = r"C:Program Files (x86)GoogleChromeApplicationchrome.exe" 
    27 
    28 #添加crx插件
    29 option.add_extension('d:crxAdBlock_v2.17.crx') 
    30 
    31 # 禁用JavaScript
    32 option.add_argument("--disable-javascript") 
    33 
    34 # 设置开发者模式启动,该模式下webdriver属性为正常值
    35 options.add_experimental_option('excludeSwitches', ['enable-automation']) 
    36 
    37 # 禁用浏览器弹窗
    38 prefs = { 
    39 'profile.default_content_setting_values' : { 
    40 'notifications' : 2 
    41 } 
    42 } 
    43 options.add_experimental_option('prefs',prefs)
    44 
    45 driver=webdriver.Chrome(chrome_options=chrome_options)

    浏览器地址栏参数:

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

     1 about:version - 显示当前版本
     2 
     3   about:memory - 显示本机浏览器内存使用状况
     4 
     5   about:plugins - 显示已安装插件
     6 
     7   about:histograms - 显示历史记录
     8 
     9   about:dns - 显示DNS状态
    10 
    11   about:cache - 显示缓存页面
    12 
    13   about:gpu -是否有硬件加速
    14 
    15   chrome://extensions/ - 查看已经安装的扩展

    其他配置项目参数:

     1 –user-data-dir=”[PATH]” 
     2 # 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区
     3 
     4   –disk-cache-dir=”[PATH]“ 
     5 # 指定缓存Cache路径
     6 
     7   –disk-cache-size= 
     8 # 指定Cache大小,单位Byte
     9 
    10   –first run 
    11 # 重置到初始状态,第一次运行
    12 
    13   –incognito 
    14 # 隐身模式启动
    15 
    16   –disable-javascript 
    17 # 禁用Javascript
    18 
    19   --omnibox-popup-count="num" 
    20 # 将地址栏弹出的提示菜单数量改为num个
    21 
    22   --user-agent="xxxxxxxx" 
    23 # 修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果
    24 
    25   --disable-plugins 
    26 # 禁止加载所有插件,可以增加速度。可以通过about:plugins页面查看效果
    27 
    28   --disable-javascript 
    29 # 禁用JavaScript,如果觉得速度慢在加上这个
    30 
    31   --disable-java 
    32 # 禁用java
    33 
    34   --start-maximized 
    35 # 启动就最大化
    36 
    37   --no-sandbox 
    38 # 取消沙盒模式
    39 
    40   --single-process 
    41 # 单进程运行
    42 
    43   --process-per-tab 
    44 # 每个标签使用单独进程
    45 
    46   --process-per-site 
    47 # 每个站点使用单独进程
    48 
    49   --in-process-plugins 
    50 # 插件不启用单独进程
    51 
    52   --disable-popup-blocking 
    53 # 禁用弹出拦截
    54 
    55   --disable-plugins 
    56 # 禁用插件
    57 
    58   --disable-images 
    59 # 禁用图像
    60 
    61   --incognito 
    62 # 启动进入隐身模式
    63 
    64   --enable-udd-profiles 
    65 # 启用账户切换菜单
    66 
    67   --proxy-pac-url 
    68 # 使用pac代理 [via 1/2]
    69 
    70   --lang=zh-CN 
    71 # 设置语言为简体中文
    72 
    73   --disk-cache-dir 
    74 # 自定义缓存目录
    75 
    76   --disk-cache-size 
    77 # 自定义缓存最大值(单位byte)
    78 
    79   --media-cache-size 
    80 # 自定义多媒体缓存最大值(单位byte)
    81 
    82   --bookmark-menu 
    83 # 在工具 栏增加一个书签按钮
    84 
    85   --enable-sync 
    86 # 启用书签同步

    ————————————————

    原文链接:https://blog.csdn.net/weixin_41624982/java/article/details/88904262

  • 相关阅读:
    django之数据库orm
    Python的迭代器和生成器
    xhprof 安装使用
    http_load
    sysbench
    LINUX系统下MySQL 压力测试工具super smack
    apache ab工具
    关于流量升高导致TIME_WAIT增加,MySQL连接大量失败的问题
    mysql5.6优化
    php-fpm超时时间设置request_terminate_timeout分析
  • 原文地址:https://www.cnblogs.com/liuyanhang/p/13257260.html
Copyright © 2011-2022 走看看