请求(或httplib2.Request)返回状态所用时间太长

2024-10-01 11:25:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在检查一些文件链接是否打开。我试过请求库:

import requests
url = 'http://releases.libreelec.tv/LibreELEC-RPi2.arm-9.0.1.img.gz'
print(requests.get(url).status_code)

还有httplib2:

import httplib2
url = 'http://releases.libreelec.tv/LibreELEC-RPi2.arm-9.0.1.img.gz'
http = httplib2.Http()
resp = http.request(url)[0]
print(resp.status)

因为链接很好。。返回“200”状态码需要很长时间(我从来没有等它完成)。对于禁止(403)代码,它可以正常工作。关键是我得快点。你知道吗


Tags: importhttpurlimg链接tvrequestsarm
2条回答

快速:

r = requests.get(url, stream=True)

参考号:python requests is slow

如果只需要获取响应代码,可以使用requests.head

import requests
try:
    r = requests.head('http://releases.libreelec.tv/LibreELEC-RPi2.arm-9.0.1.img.gz')
    print(r.status_code)
except:
    print('problem')

topic所示,它应该更快,因为它只得到头部,但是请检查它是否足够快以满足您的目的。你知道吗

相关问题 更多 >