问题标签 [selenium4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
16 浏览

authentication - 身份验证后请求暂停

我正在尝试使用 java 和 selenium 4 自动化 magento 站点。站点启用了基本身份验证。我成功通过身份验证的唯一方法是使用本文 https://www.selenium.dev/blog/2021/a-tour-of-4-authentication/中的数据, 所以我有以下代码

似乎工作正常,我获得了授权,但我面临以下问题:我的所有后续操作都被暂停。我在调试控制台中看到的是以下内容

在浏览器网络选项卡中,我的请求处于待处理状态

带有待处理请求的示例 img

0 投票
0 回答
6 浏览

devtools - 使用带有 selenium4 的远程驱动程序访问 devtool 时执行空指针

我正在尝试使用 selenium4 和远程驱动程序访问 devtool,但我面临空指针异常。我在本地也试过了,效果很好

0 投票
0 回答
28 浏览

selenium - Get Network call response time in milliSecond with Selenium4 DevTools

I want to get the time taken by the page to load using Selnium. So far I am using Selenium4 Devtools option intercepting Network calls.

I used code System.out.println( "Request URL : " + entry.getResponse().getUrl() + "\n" +"Response-Time: " + entry.getResponse().getResponseTime().get());

However in output I always get 1.6xxxxxxE12

I am not able to understand how to get the Response time in human readabe format ie: Seconds or MilliSecond. I see in doc the return class is Selenium TimeSinceEpoch.

I tried with other websites or url as well, but time is always 1.6xxx

Basically all I am trying is to get how much time it takes for Page to Load

0 投票
1 回答
164 浏览

c# - 使用 C# 的 Selenium 4 启动 Selenium Grid

我在使用 Selenium 4 从 Csharp 的 Visual Studio 运行 Selenium Grid 时遇到问题。我不断收到错误消息:

信息:

堆栈跟踪:

你能告诉我我错过了什么吗?我从这个位置下载了 .jar 文件 - https://www.selenium.dev/downloads/

我在本地机器上启动了 selenium hub: 在此处输入图像描述

然后我在这里注册了 selenium 节点: 在此处输入图像描述

我确保我可以在这里进入网格: 在此处输入图像描述

这是我的代码(我最初使用 http://localhost:4444/wd/hub)但仍然遇到相同的错误: 在此处输入图像描述

当我将代码更改为

我收到这个错误

信息:

0 投票
0 回答
20 浏览

python-3.x - 如果后台没有运行 chromedriver.exe 或 chrome.exe 实例,还有什么可以使用 user-data-dir 路径?Selenium4 相关

我开发了一个简单的程序,它Chrome Driver使用用户执行一个实例--user-data-dir--profile-directory在执行 chrome 驱动程序之前向用户询问这些参数:

我使用我的配置文件路径对其进行了测试:C:\Users\ResetStoreX\AppData\Local\Google\Chrome\User Data\Default并收到以下错误:

WebDriverException:未知错误:无法删除旧的 devtools 端口文件。可能“C:\Users\ResetStoreX\AppData\Local\Google\Chrome\User Data”中给定的用户数据目录仍附加到正在运行的 Chrome 或 Chromium 进程

然后,我快速搜索了一个命令来杀死 Windows 上的所有 chrome/chromedriver 进程并找到它,我立即打开cmd并输入以下内容:

并得到:

错误:找不到进程“chrome.exe”。

我还输入了:

并且还得到了:

错误:找不到进程“chromedriver.exe”。

上面的意思是在执行这个程序的那一刻不可能有任何 chrome 实例使用该user-data-dir路径,我什至重新启动了我的电脑并作为第一件事运行了这个程序并得到了同样的WebDriverException: unknown error结果,这很奇怪。

所以我认为最终问题必须与调用方式有关 user_dataopt.add_argument(fr'--user-data-dir="{user_data}"')即使这个变量正确存储user data path并且被定义为一个str类型:

真1

但是我还没有弄清楚,所以我来这里发布这个并寻找可以帮助我解决这个问题的反馈。

0 投票
1 回答
26 浏览

python-3.x - 为什么 opt.add_argument('--user-data-dir='+r'path') 工作,但 opt.add_argument('--user-data-dir='+fr'"{path}"') 没有' t 作为 Selenium 的一个选项?

chrome driver在尝试部署using--user-data-dir--profile-directoryfrom the user on时,我意识到了一些非常奇怪的事情Python 3.9.7,见下文:

如果编译以下代码:

您使用相应的--user-data-dirand成功获得了一个 chrome 驱动程序实例--profile-directory

预览1

现在,在使用以下代码杀死所有 chrome 驱动程序实例后 cmd

然后编译这个其他代码:

最后输入:C:\Users\ResetStoreX\AppData\Local\Google\Chrome\User Data作为输入

你得到这个错误

WebDriverException:未知错误:无法删除旧的 devtools 端口文件。可能“C:\Users\ResetStoreX\AppData\Local\Google\Chrome\User Data”中给定的用户数据目录仍附加到正在运行的 Chrome 或 Chromium 进程

为什么会这样?

不是opt.add_argument('--user-data-dir='+fr'"{path}"')传递此用户数据路径的有效方式:

path = C:\Users\ResetStoreX\AppData\Local\Google\Chrome\User Data?

0 投票
0 回答
61 浏览

python - 如何将 touchAction 与 Selenium 4 的 w3c 协议一起使用?

当我在 python 中使用 TouchActions 时,错误是

消息:未知命令:在 W3C 模式下无法调用非 W3C 标准命令

有了这个,ActionChains 类运行良好。这是我的python代码:

  • 硒 4.1.0
  • ChromeDriver 97.0.4692.71
  • 谷歌浏览器 97.0.4692.71

我该如何解决?

0 投票
1 回答
1285 浏览

python - WebDriverException:消息:服务 geckodriver 意外退出。状态码是:在 FreeBSD 监狱中使用 Selenium Geckodriver Firefox 时出现 64 错误

对于一些测试,我设置了一个全新的 TrueNAS 12.3 FreeBSD Jail 并启动它,然后安装,python3并使用以下命令:firefoxgeckodriverpip

之后,当我想在我的 Python 代码中使用 Selenium 和 Firefox 时,它不起作用:

带来

有趣的是,在我大约一年前设置的另一个监狱中(大约也以上述方式),它可以正常工作并且不会抛出错误(所以可能是不同的版本?)!

这是唯一的内容geckodriver.log

有什么我可以尝试让它工作的吗?我已经看过这个问题,但它似乎已经过时了。

Firefox 95.0.2、geckodriver 0.26.0、Python 3.8.12、Selenium 4.1.0

0 投票
1 回答
544 浏览

selenium - 弃用警告:不推荐使用 find_elements_by_* 命令。请使用 find_elements() 而不是在 Google Colab 中使用 Selenium

有一些函数可以与 selenium 一起使用,这些函数有一定的输出,但是当我在 google colab 中打开它们时,我会得到一些我不想要的输出,这会降低理解。

有没有办法在示例中不获取“BETSWITHBOT”和“HATAYSPOR”之间的输出?

我的代码:

0 投票
1 回答
95 浏览

java - Selenium 4:获取 java.lang.NoSuchMethodError: org.openqa.selenium.WebElement.getDomAttribute(Ljava/lang/String;)Ljava/lang/String;

我正在使用带有 chrome 97 的 selenium“4.1.2”。使用选择类从下拉列表中选择值时,出现异常:

以下是我项目中的依赖项:

非常感谢解决此问题的任何帮助。