python 快速判断一个网站(或网页)能否访问。getcode 返回200判断能访问的,怎么能快速判断不能访问的
展开全部
我之前遇到的,一种方法是,
当用urllib2.urlopen等方法打开url地址时,有时候会由于地址已经失效,即你所指的不能访问,此时,会收到异常,即你写代码,去实现exception部分的代码,可以获得异常。
此时,就是各种可能的错误了。
贴出一些,我之前的相关的代码:
def isFileValid(fileUrl) :
fileIsValid = False;
errReason = "Unknown error";
try :
。。。
resp = urllib2.urlopen(fileUrl, timeout=gConst['defaultTimeout']); # note: Python 2.6 has added timeout support.
。。。
except urllib2.URLError,reason :
fileIsValid = False;
errReason = reason;
except urllib2.HTTPError,code :
fileIsValid = False;
errReason = code;
except :
fileIsValid = False;
errReason = "Unknown error";
# here type(errReason)= <class 'urllib2.HTTPError'>, so just convert it to str
errReason = str(errReason);
return (fileIsValid, errReason);
然后你就自己在except部分做你自己需要的判断即可。
另外,相关完整的代码,可以通过搜:
crifanLib.py
而找到全部的代码,以及相关用法的解释。
当用urllib2.urlopen等方法打开url地址时,有时候会由于地址已经失效,即你所指的不能访问,此时,会收到异常,即你写代码,去实现exception部分的代码,可以获得异常。
此时,就是各种可能的错误了。
贴出一些,我之前的相关的代码:
def isFileValid(fileUrl) :
fileIsValid = False;
errReason = "Unknown error";
try :
。。。
resp = urllib2.urlopen(fileUrl, timeout=gConst['defaultTimeout']); # note: Python 2.6 has added timeout support.
。。。
except urllib2.URLError,reason :
fileIsValid = False;
errReason = reason;
except urllib2.HTTPError,code :
fileIsValid = False;
errReason = code;
except :
fileIsValid = False;
errReason = "Unknown error";
# here type(errReason)= <class 'urllib2.HTTPError'>, so just convert it to str
errReason = str(errReason);
return (fileIsValid, errReason);
然后你就自己在except部分做你自己需要的判断即可。
另外,相关完整的代码,可以通过搜:
crifanLib.py
而找到全部的代码,以及相关用法的解释。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询