【问题标题】:Selenium wait for page load pythonSelenium 等待页面加载 python
【发布时间】:2017-03-27 13:50:02
【问题描述】:

我目前正在尝试通过 python 2.7.12 使用 selenium 驱动程序提交表单,然后检索加载的页面。我目前似乎没有等待页面加载的代码这是我拥有的代码:

while False:
    try:
        driver.find_element_by_id("ctl00_lblStockName") #oldpage id
        break
    except StaleElementReferenceException:
        continue

print ("Page is ready!")
f = driver.page_source
soup = BeautifulSoup(f,'html.parser')
print (soup)

上面的代码只是在搜索之前打印页面的html。我不确定我的 while 循环是否正常工作。

我尝试了另一种使用超时功能的方法,但出现错误

AttributeError: 'WebDriver' object has no attribute 'manage'

我也读到使用超时也不是特别可靠,所以我想避免这种方法,除非它是唯一的选择。

【问题讨论】:

  • 你能分享页面网址吗

标签: python selenium web-scraping


【解决方案1】:

致仍在寻找 Python 解决方案的任何人:

set_page_load_timeout(*time in seconds*)

例如

driver.set_page_load_timeout(20)     #waits for a page to load within 20 seconds before Selenium throws out Timeout exception

【讨论】:

    【解决方案2】:

    请检查您的代码 driver.manage() 是否被调用删除函数调用在 python 绑定中查找替代 (http://selenium-python.readthedocs.io/api.html)。

    driver.manage()。是在 Selenium 的 Java 绑定中而不是在 Python 绑定中。

    【讨论】:

    • 那么我们可以在python中使用什么??
    • driver.implicitly_wait(int secs)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    • 2018-03-20
    • 1970-01-01
    • 2017-11-10
    • 2011-08-17
    • 2018-06-14
    相关资源
    最近更新 更多