Splinter入门(十三)HTTP状态码和异常
HTTP status code(HTTP状态码)
Splinter支持使用页面返回的HTTP状态码(browser.visit)
,例如:
browser.visit('http://cobrateam.info')
browser.status_code.is_success() # True
# or
browser.status_code == 200 # True
# or
browser.status_code.code # 200
如果重定向,或某些不是HTTP错误的内容,StatusCode.is_Success
将认为响应是成功的(True)
,具体的可以HTTP状态码通过state_code.code
访问。
HTTP exceptions(HTTP异常)
每当使用visit()
方法时,Splinter将检查响应是否成功,如果没有,它将引发HttpResponseError
异常,并可以捕获异常:
try:
browser.visit('http://cobrateam.info/i-want-cookies')
except HttpResponseError, e:
print "Oops, I failed with the status code %s and reason %s" % (e.status_code, e.reason)