我需要扫描一组给定的 URL 并获取 HTTP 状态代码,例如 Python 中的“200 OK”。我目前正在使用 urllib 来执行此操作。有更快的方法吗?
Python代码
def get_status(url):
try:
return urllib.urlopen(url).getcode()
except StandardError :
return None
请您参考如下方法:
Couple 评论我会做出更快更快乐的状态检查。第一个技巧是使用 http HEAD 方法。这只要求服务器提供 http header (包括状态代码),而无需它也为页面正文提供服务。
第二个 urllib 有效,但我建议使用精彩的 Requests库,它为几乎所有您想用 http 做的事情提供了更好的 api。
最后我会使用 gevents库使您能够异步下载每个 header ,从而大大加快整个过程。
