如何在 Selenium 中以编程方式停止 firefox 程序加载页面?


我们可以以编程方式停止 Firefox 中的页面加载。这可以通过首先使用 pageLoadTimeout 方法设置页面加载时间来实现。

等待页面加载的时间作为参数传递给该方法。

语法

driver.manage().timeouts().pageLoadTimeout(10, TimeUnit.MILLISECONDS);

借助Javascript 执行器强制页面停止加载。Selenium 使用executeScript方法执行 JavaScript 命令(window.stop() 停止页面加载)。

语法

((JavascriptExecutor)driver).executeScript("window.stop();");

示例

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class StopPageLdWait{
   public static void main(String[] args) {
      System.setProperty("webdriver.gecko.driver",
      "C:\Users\ghs6kor\Desktop\Java\geckodriver.exe");
      WebDriver driver = new FirefoxDriver();
      //apply page load time
      driver.manage().timeouts().pageLoadTimeout(1, TimeUnit.MILLISECONDS);
      driver.get("https://tutorialspoint.com/index.htm");
      for (int i = 0; i < 2; i++) {
         try {
            // launch page
            driver.get("https://tutorialspoint.com/index.htm");
            break;
         } catch (org.openqa.selenium.TimeoutException e) {
            //stopping page load
            ((JavascriptExecutor)driver)
            .executeScript("window.stop();");
            System.out.println("Page didnot load");
         }
      }
   }
}

输出

浏览器窗口

更新日期:02-Feb-2021

395 次浏览

开启你的 职业生涯

通过完成该课程获得认证

开始
广告
© . All rights reserved.