python—为什么超时不能在请求库中工作?

fzsnzjdm  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(178)

我想解析来自许多网站的一些数据。我的代码的一部分是一个函数,它从请求的url获取数据。
这是我的函数,如您所见,我为 get 功能。

import requests, re
from lxml import html
from requests_html import HTMLSession
from requests.adapters import HTTPAdapter
from requests.packages.urllib3.util.retry import Retry

def get_source(url):
    try:
        session = HTMLSession()
        retry = Retry(connect=0, backoff_factor=0.5)
        adapter = HTTPAdapter(max_retries=retry)
        session.mount('http://', adapter)
        session.mount('https://', adapter)
        response = session.get(url, verify=False, timeout=0.5)
        #response = session.get(url, verify=False, timeout=(0.5, 0.5))
        return response
    except requests.exceptions.RequestException as e:
        print(e)
        return None

但是当我使用下面的url调用这个函数时,函数的执行时间大于300秒。 https://www.bjcta.org/wp-content/uploads/2021/02/Unified-Certification-Program-DBEs-Alabama.xls 我不知道主要问题是什么,也不知道如何设置超时以防止执行时间增加。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题