【问题标题】:Page keeps loading for a very long time even after an explicit wait (Selenium Python)即使经过显式等待,页面也会持续加载很长时间(Selenium Python)
【发布时间】:2021-09-13 23:19:53
【问题描述】:

目前,我正在使用selenium 浏览网络。具体来说,我使用selenium 为每个请求访问网站 X。导航到网站 X 后,WebDriver 应该等待某个元素的存在(最多 5 秒)。然而,对我来说很奇怪的是,有时 WebDriver 会加载网站 X 很长时间。通常为 20-45 秒。当我在每个请求之后都实现了显式等待时,这怎么可能发生?代码如下:

   for i in range(1000):
        driver = webdriver.Chrome()
        driver.get('https://www.canva.com/login')
        WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'span.sMwixw')))
        driver.close()

谁能解释这种行为?如果是这样,我该如何避免它?也就是说,每个请求的等待时间不超过 5 秒。

【问题讨论】:

    标签: python python-3.x selenium selenium-webdriver webdriverwait


    【解决方案1】:

    听起来您想将页面加载策略设置为无:

    driver = webdriver.Chrome(options=opts, desired_capabilities={"page_load_strategy": "none"})
    

    否则它将等到它认为页面已加载,然后选择器再等待 5 秒

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-26
      • 2017-03-27
      • 1970-01-01
      • 2020-01-01
      • 2018-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多