我仍在学习并回答我的一个问题: 在这里,有人告诉我这可能是到期的,因为所讨论的元素不在视图中。
我查看了文档和 SO,这是最相关的答案: here
您可以使用“org.openqa.selenium.interactions.Actions”类移动到一个元素:
WebElement element = driver.findElement(By.id("my-id"));
Actions actions = new Actions(driver);
actions.moveToElement(element);
## actions.click();
actions.perform();
当我尝试使用上面的内容滚动到元素时:它说 WebElement 未定义。
我认为这是因为我没有导入相关模块。有人可以指出我应该导入什么吗?
编辑:正如 alecxe 所指出的,这是 java 代码。
但与此同时,在尝试弄清楚一段时间之后。我找到了 WebElement 的导入方法:
from selenium.webdriver.remote.webelement import WebElement
可能会帮助像我这样的人。
IMO,它的方法也是一个很好的教训:
去了: 文档
class selenium.webdriver.remote.webelement.WebElement(parent, id_, w3c=False)
需要拆分成上面提到的命令形式。
原文由 Sid 发布,翻译遵循 CC BY-SA 4.0 许可协议
您正在尝试使用 Python 运行 Java 代码。在 Python/Selenium 中,
org.openqa.selenium.interactions.Actions
反映在ActionChains
类 中:或者,您也可以通过
scrollIntoView()
“滚动到视图中”:如果您对差异感兴趣: