分享

selenium启动Chrome配置参数问题...

 馆藏室101 2022-03-15

每次当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. option.add_argument()
  5. # 添加扩展应用
  6. option.add_extension()
  7. option.add_encoded_extension()
  8. # 添加实验性质的设置参数
  9. option.add_experimental_option()
  10. # 设置调试器地址
  11. option.debugger_address()

常用配置参数:

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

浏览器地址栏参数:

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

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

image

其他配置项目参数

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多