当前位置: 首页 > 知识库问答 >
问题:

硒铬选项的含义

索吕恭
2023-03-14

Selenium在无头模式下工作时,我遇到了很多问题。因此,我将这些选项添加到我的ChromeOptions对象中:

  1. --代理服务器class='direct://'
  2. --代理绕过列表=*
  3. --禁用开发shm使用
  4. --禁用浏览器侧导航

我看到它帮助Selenium在无头模式下更快地工作并给出更好的结果,但我不明白每个选项的真正意义。每个选项有什么作用?

共有1个答案

徐飞尘
2023-03-14

使用指定的代理服务器,覆盖系统设置。此开关仅影响 HTTP 和 HTTPS 请求。

指定我们绕过代理设置并使用直接连接的主机列表。除非还指定了- proxy-server,否则忽略。这是以逗号分隔的绕过规则列表。

有关更多详细信息,请参阅:https://source.chromium.org/chromium/chromium/src//main:net/proxy_resolution/proxy\u bypass_rules.h?q=net/proxy_resolution/proxy\u bypass_rules.h

/dev/shm分区在某些VM环境中太小,导致Chrome失败或崩溃。使用此标志解决此问题(将始终使用临时目录来创建匿名共享内存文件)。

查看错误详情:https://bugs.chromium.org/p/chromium/issues/detail?id=715363

每当您在selenium驱动程序的帮助下加载某个页面时,驱动程序脚本都会等到页面完全加载。但有时候web驱动程序需要更多时间来加载页面,在这种情况下,您会在控制台中看到TimeoutException异常。因此,您需要停止下载其他子资源(图像、CSS、js等),您可以通过web驱动程序更改pageLoadStrategy

参考:从渲染器接收消息超时:0.100通过Selenium Java使用ChromeDriver和Chrome v80记录消息

参考:https://peter.sh/experiments/chromium-command-line-switches/#proxy-服务器

 类似资料:
  • 我在过去的一周里一直在处理这个问题,脑子里想不起来,所以我决定寻求帮助。我正在尝试使用Chromium 86构建在AWS Lambda中运行Selenium。我不断收到的错误消息如下: 以下是我的版本: 这是我的代码: 到目前为止我已经尝试过的事情: 尝试了各种运行时Python 3.6、3.7、3.8,但没有成功 尝试使用和不使用Lambda层。尝试使用Lambda逐层文件夹结构时相对简单: C

  • 也许有人可以帮助Windows、Python、Selenium和使用Chrome webdriver与ChromePortable。 我定义了一个新文件夹 你知道吗?提前谢谢你,祝你一天愉快安德烈亚斯

  • 运行我能想到的最基本的硒测试。 我在使用, Chrome版本52.0.2743.82M ChromeDriver 2.22 Selenium WebDriver 2.53.1 Selenium WebDriver支持类2.53.1 Win10(最近升级) 我已经尝试卸载和重新安装chrome和删除用户配置文件。 我得到的错误是, 测试名称:TestMethod1测试全名:UnitTestProje

  • 作为项目设置的一部分,我有两个项目,一个作为库,另一个作为Selenium。我在libraries项目中设置了所有浏览器,其中/src/main/resource具有chromedriver。exe Selenium项目具有所有pagefactory类,并且该项目依赖于库。但是,当我在从属服务器上运行project时,我收到以下错误消息:

  • 我在使用html2canvas。js库,用于与selenium一起拍摄全页屏幕截图。 我保存了html2canvas。我的java项目的类路径中的js文件。我用来获取屏幕截图的java脚本代码是: 我能够捕获flipkart页面的全页屏幕截图,但其中没有任何图像。 我无法使用Chrome的TakeScreenshot实用程序,因为它不允许使用Chrome浏览器拍摄整页屏幕截图。