【问题标题】:How to scroll page with selenium如何用硒滚动页面
【发布时间】:2012-01-16 00:30:45
【问题描述】:

我正在使用 FirefoxDriver 网络驱动程序。在 Firefox 窗口中加载的页面是一个大页面,我想使用 selenium 滚动该页面。

我想知道如何做到这一点。

【问题讨论】:

  • 您应该聚焦到所需的项目,selenium 2 将负责找到它。看看这个 SO 帖子stackoverflow.com/questions/3401343/…
  • 我假设您想要使用 Selenium API,这里是使用 Selenium API 滚动页面的链接。 Scroll Page
  • driver.execute_script(f"window.scrollTo(0, {2**127});")

标签: java selenium selenium-firefoxdriver


【解决方案1】:

我认为你应该做类似的事情

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

祝你好运。

【讨论】:

    【解决方案2】:

    使用此代码向下滚动单页

    Actions actions = new Actions(driver);
    actions.sendKeys(Keys.BACK_SPACE).perform();
    

    【讨论】:

    • 您确定要发送的密钥正确吗?似乎是按backspace 键,不会滚动页面。
    • Page Down 键?
    • 亲爱的#facepalm
    【解决方案3】:
    page.driver.browser.mouse.move_to( find("element").native,100,100)
    

    【讨论】:

      【解决方案4】:

      如果你想使用selenium webdriver在firefox窗口上滚动,其中一种方法是在java代码中使用javaScript,向下滚动的javeScript代码如下:

      WebDriver driver = new FirefoxDriver();
      JavascriptExecutor js = (JavascriptExecutor)driver;
      js.executeScript("window.scrollTo(0,Math.max(document.documentElement.scrollHeight," + "document.body.scrollHeight,document.documentElement.clientHeight));");
      

      【讨论】:

        猜你喜欢
        • 2013-01-24
        • 2021-10-17
        • 2020-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-10
        相关资源
        最近更新 更多