当前位置: 首页 > 知识库问答 >
问题:

WebDriver:等待'JS弹出屏幕‘加载而不使用Thread.Sleep()

沈俊美
2023-03-14

弹出窗口加载后,无法单击单选按钮

*请注意,我过去曾提出过一个问题,但我希望避免使用thread.sleep
链接:

共有1个答案

龚凌
2023-03-14

你没有发布任何代码,所以我不确定你都尝试了什么。我写了下面的代码,它工作了。

String pizzaType = "Hawaiian"; // the pizza type from the Pizza menu
String postcode = "AL1 2PS";
String url = "https://www.pizzahut.co.uk/";
driver.get(url);
driver.findElement(By.linkText("Pizza")).click(); // click Pizza menu
driver.findElement(By.xpath("//h3[text()='" + pizzaType + "']/../../../..//button")).click(); // click a pizza type specified by pizzaType
driver.findElement(By.id("ajax-postcode-txt")).sendKeys(postcode); // enter a postcode
driver.findElement(By.id("get-store-btn")).click(); // click "Find a Hut"
driver.findElement(By.cssSelector("input[data-value='later']")).click(); // click "Order for later"
 类似资料:
  • 我对selenium webdriver有问题,如果有人能帮助我,我将非常感激 环境: 硒服务器独立-2.31.0.jar / 硒-服务器-独立-2.35.0.jar IE驱动程序服务器.exe(已尝试版本 2.28 - 2.35) 示例代码: 问题:修复这些问题都会对我有所帮助 href。sendKeys()成功模拟用户单击,但不等待页面加载。 href。click()无法模拟用户单击,但成功等

  • 我想等待页面完全加载。我知道我可以通过等待页面元素加载来做到这一点。 但是我想要更通用的东西,我假设可以使用Favicon来确定页面是否已完全加载。 如何使用Selenium Webdriver确定FavIcon是否已加载到页面中? “我知道这只是你的HTML源代码中的另一个元素。但是如果你查看任何网页上的页面加载,Favicon将是最后一个被加载的。如果有一种方法可以等到Favicon加载到网页

  • 我正在使用Python 2.7与火狐的硒网络驱动程序,我有一个问题,我不能解决或在互联网上找到解决。我的任务是打开大约10k个网页(adsl路由器Web界面 - 通过IP地址)并上传新固件。我写了代码,但为了完成它,我必须学习如何使硒webdriver不要像永远一样等待页面加载,而是等待2分钟(这是新固件上传所需的时间),然后继续下一步。我以为我让它永远等待(等待路由器重新连接 - 速度慢得多,但

  • 问题内容: 我想抓取无限滚动实现的页面的所有数据。以下python代码有效。 这意味着每次我向下滚动到底部时,我需要等待5秒钟,这通常足以使页面完成加载新生成的内容。但是,这可能不是省时的。该页面可能会在5秒内完成新内容的加载。每次向下滚动时,如何检测页面是否完成了新内容的加载?如果可以检测到此情况,则在知道页面加载完成后,可以再次向下滚动以查看更多内容。这样更省时。 问题答案: 该会通过等待页面

  • 有时,在我用Selenium2.41完成的测试中,在Firefox28测试中,执行挂起等待页面加载。 还要设置以下属性:

  • 我想刮去一个由无限滚动实现的页面的所有数据。下面的python代码可以工作。 这意味着我每次向下滚动到底部,都需要等待5秒,一般情况下足够页面完成加载新生成的内容。但是,这可能没有时间效率。页面可能在5秒内完成加载新内容。每次向下滚动时,如何检测页面是否加载完新内容?如果我能检测到这一点,我可以再次向下滚动查看更多的内容,一旦我知道页面加载完成。这样时间效率更高。