问题标签 [expected-condition]

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 投票
1 回答
1467 浏览

selenium-webdriver - AttributeError:“WebDriver”对象没有属性“等待”

0 投票
1 回答
43 浏览

javascript - 无法在量角器的角度站点上使用 ExpectedConditions 功能

上面的代码给出的错误如下:

0 投票
0 回答
130 浏览

python - 登录几秒钟后,Chrome 中的 Selenium Python 出现“会话已过期”错误

我有一个用 python 编写的硒程序。它必须登录、加载页面并导航到某个页面才能执行某些功能。但是,当我使用 chrome 运行脚本时,脚本几乎没有任何功能,并给出一个对话框,显示“您的会话已过期”。有时它登录然后给出这个错误,很多时候,它甚至没有使用给定的凭据登录。

它执行的整个过程几乎不会 5 秒,然后向我抛出这个错误“会话已过期”。我的脚本中有具有预期条件的等待语句(直到延迟时间 = 30)、隐式等待(最大等待 = 10)以及时间(最大 3).sleep 命令。我完全不知道为什么会这样。

如果我尝试手动登录,一切正常。但是当我尝试使用 selenium 预期条件登录时​​,它失败了。但令我惊讶的是,它一直在登录,运行良好,直到 3 天前。现在突然发生了这样的事情。但是手动完成时没有问题。

我希望知道这种情况的人可以分享他们的知识来帮助我。预先感谢您伸出手来用您的知识照亮某人的生活!

0 投票
1 回答
22 浏览

javascript - 除了尝试捕获或承诺拒绝之外,有没有办法处理量角器的预期条件?

我正在使用量角器来自动化 Web 测试以及 async/await 模式。

假设我有一个元素仅在我第一次单击特定切换时出现。

问题是,当它出现时,我想点击它。

有没有办法等待这个元素,如果它出现我点击它,如果没有,我点击别的东西然后继续我的操作而不使用 try/catch 块

Si 它应该是这样的(请注意,这是假设的):

我现在正在做的事情如下:

0 投票
2 回答
126 浏览

python - 为什么我的硒预期条件不能作为 python if 语句中的条件工作?

我在下面有一个功能,可以单击我页面上表单上的提交按钮。为了成功提交表格,必须附上文件。但是,根据有时链接数据库的方式,保存的文档不会填充为已上传。

这是一个小细节,优先提交表格。我创建了一个 if 语句来检查上传按钮是否存在。如果是,那么它应该从我的电脑上传一个文件,然后单击提交按钮。如果不是,那么它应该只单击提交按钮。

当存在上传按钮时,此方法有效。但是,当它不是时,它会卡在 if 条件上并且不会到达 else 子句。

0 投票
2 回答
70 浏览

java - 如何等待动态加载元素列表

我有一个搜索框,当我搜索一个值时,比如银行名称,它会显示与搜索框中给出的文本匹配的结果。但这里的问题是它可能不是一个确切的结果,而且通过在搜索结果中智能刷新,加载完整列表需要几秒钟。因此,即使我等待加载某些结果,它也会立即获取当时出现的值,但实际上它会在几秒钟后刷新列表。那么我怎样才能等待完成加载然后取出结果。请对此有任何帮助。

在此处输入图像描述

代码片段

0 投票
4 回答
46 浏览

python - 一些类似的硒等待有什么区别?

简单的问题:

这两个陈述之间的确切区别是什么:

  1. WebDriverWait(self._driver, WEB_WAIT_TIMEOUT).until(ec.invisibility_of_element_located(element))

  1. WebDriverWait(self._driver, WEB_WAIT_TIMEOUT).until_not(ec.presence_of_element_located(element))

在这两种情况下,硒的行为在我的情况下是相同的。提前致谢

感谢您的回复 好的,但仍有一些我不明白的地方:我有检查微调器是否不可见的基本功能。

但是,即使微调器不可见,selenium 也会等待(比预期多 8 秒)。有什么问题?

0 投票
1 回答
34 浏览

python - 当 Selenium 中的预期条件失败时,不遵守 waitTime

我有以下示例代码:

当元素被定位时,等待时间为 10 秒,因此打印所花费的时间,'Success' is <=10 seconds但当预期条件失败时,则'Failure' is 50 seconds持续打印所花费的时间。

那么为什么是10 seconds limit not honored失败案例呢?为什么需要50 seconds?

0 投票
1 回答
77 浏览

java - 为什么可点击的预期条件不执行 click()?

为什么 Selenium 的预期条件waitForElementToBeClickable没有内置click()方法?
Selenium 知道我正在等待元素可点击,那么为什么我必须driver.click()对该元素执行额外的操作呢?
他们至少可以在那里添加某种标志,以便click()在满足预期条件时执行或不执行。

0 投票
1 回答
32 浏览

selenium - expected_conditions.elementS_to_be_clickable((By.TAGNAME,'a'))

我有一些网页抓取项目,其中有这样的代码:

我的问题是,我该如何使用

返回所有 a 标签或第 25 个标签。还是我只需要使用 sleep() 代替。