停止页面加载Python / Selenium / PhantomJS

时间:2016-10-11 18:57:50

标签: python selenium phantomjs

尝试使用driver.get()this url,但它只是挂起。

有没有办法可以阻止此页面加载,然后抓取已加载的html?

我尝试以各种方式操作页面来加载动态内容,但无论我做什么,页面仍然会挂起。

1 个答案:

答案 0 :(得分:2)

设置set_page_load_timeout,然后处理异常:

from __future__ import print_function

from selenium import webdriver
from selenium.common.exceptions import TimeoutException

def get_page(driver, page):
    try:
        driver.get(page)
    except TimeoutException:
        pass


def main():

    driver = webdriver.Chrome()

    try:
        driver.set_page_load_timeout(5)
        get_page(driver, "http://your/long/url")

        print("Returned from page get")

        from pprint import pprint as pp
        pp(driver.page_source)

    finally:
        driver.quit()


if __name__ == "__main__":
    main()
相关问题