首页 > 后端开发 > C++ > 如何避免使用`-user-data-dir`'selenium chrome crome croment危险问题?

如何避免使用`-user-data-dir`'selenium chrome crome croment危险问题?

Linda Hamilton
发布: 2025-01-27 18:21:08
原创
322 人浏览过

How to Avoid Selenium Chrome Profile Hang Issues Using `--user-data-dir`?

使用 --user-data-dir

解决 Selenium Chrome 配置文件挂起问题

问题:

Selenium 用户在使用 --user-data-dir--profile-directory 加载 Chrome 配置文件时经常遇到挂起。 浏览器在超时之前通常会冻结长达 60 秒,从而扰乱自动化。

解决方案:避免使用默认配置文件

关键是要避免使用默认的 Chrome 配置文件。 默认配置文件中的扩展、书签和浏览历史记录可能与测试冲突,从而导致错误。 相反,创建并使用专用配置文件。

创建自定义 Chrome 配置文件:

  1. 打开 Chrome 设置 (chrome://settings/)。
  2. 转到“人员”并选择“管理其他人”。
  3. 添加新的用户个人资料,选择名称和图标。
  4. 为此新配置文件创建桌面快捷方式。
  5. 在快捷方式的属性中找到配置文件目录路径。

使用 ChromeOptions:

获得自定义配置文件后,请使用 ChromeOptions 指定其位置:

<code class="language-csharp">ChromeOptions options = new ChromeOptions();
options.AddArgument($"--user-data-dir={profileDirectoryPath}"); // Use string interpolation for clarity
options.AddArgument("--disable-extensions");
ChromeDriver driver = new ChromeDriver(@"pathtoexe", options); </code>
登录后复制

{profileDirectoryPath} 替换为您在上面第 5 步中找到的实际路径。 pathtoexe 应指向您的 ChromeDriver 可执行文件。

完整示例:

此代码演示了如何使用自定义配置文件:

<code class="language-csharp">ChromeOptions options = new ChromeOptions();
options.AddArgument("--user-data-dir=C:/Users/Me/AppData/Local/Google/Chrome/User Data/Profile 2");
options.AddArgument("--disable-extensions");
ChromeDriver driver = new ChromeDriver(@"pathtoexe", options);
driver.Navigate().GoToUrl("somesite");</code>
登录后复制

测试执行成功:

通过使用这种自定义配置文件方法,Chrome 应该可以在没有挂起的情况下启动,从而使您的 Selenium 测试能够顺利运行。 请记住将占位符路径替换为您的实际目录路径。

以上是如何避免使用`-user-data-dir`'selenium chrome crome croment危险问题?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板