使用webdriver滚动到元素?

席德

我仍在学习,并在回答我的一个问题:在这里,我被告知可能是由于没有考虑到所涉及的元素。

我仔细阅读了文档和SO,这是最相关的答案:这里

您可以使用“ 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)

需要分成上面提到的命令形式。

ec

您正在尝试使用Python运行Java代码。在Python / Selenium中,org.openqa.selenium.interactions.Actions反映在ActionChains类中

from selenium.webdriver.common.action_chains import ActionChains

element = driver.find_element_by_id("my-id")

actions = ActionChains(driver)
actions.move_to_element(element).perform()

或者,您也可以通过以下方式“滚动查看” scrollIntoView()

driver.execute_script("arguments[0].scrollIntoView();", element)

如果您对这些差异感兴趣:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Selenium WebDriver滚动到元素

来自分类Dev

滚动到特定元素Selenium WebDriver Java

来自分类Dev

在Chrome上使用Python的Selenium Webdriver-滚动到元素的确切中间

来自分类Dev

使用数据属性滚动到元素

来自分类Dev

使用html滚动到特定元素

来自分类Dev

使用数据属性滚动到元素

来自分类Dev

Selenium Webdriver:使用Javascript滚动到顶部

来自分类Dev

水平滚动到元素

来自分类Dev

使用元素ID Meteor滚动到页面上的元素

来自分类Dev

使用ajaxify_rails滚动到元素中断

来自分类常见问题

用户滚动到特定元素时触发事件-使用jQuery

来自分类Dev

如何使用CSS / JS滚动到特定元素

来自分类Dev

如何使用硒将网页滚动到目标元素

来自分类Dev

如何使用CSS / JS滚动到特定元素

来自分类Dev

使用jQuery滚动到div中的元素并垂直居中

来自分类Dev

使用javascript将元素正确滚动到页面顶部

来自分类Dev

jQuery:滚动到元素的中心

来自分类Dev

单击以水平滚动到元素

来自分类Dev

单击时滚动到元素

来自分类Dev

滚动到onClick JavaScript元素

来自分类Dev

滚动到按键上的元素

来自分类Dev

滚动到可滚动div中的元素

来自分类Dev

渲染后将滚动滚动到元素

来自分类Dev

仅向下滚动对齐滚动到元素

来自分类Dev

滚动按钮滚动到多个元素位置

来自分类Dev

Webdriver:等待PagetoLoad,然后滚动到Element

来自分类Dev

如何使用Webdriver和javascript滚动子元素?

来自分类Dev

jQuery scrollto不滚动到正确的元素

来自分类Dev

在ajax调用后滚动到某个元素