selenium_页面(status code)状态码校验

  • 校验访问网页是否正常打开,比较简单的方法就是通过校验状态码是否为 200 ,所以特意总结了常用状态码:
    code = {
    100 :'Continue',
    101 : 'Switching Protocols',
    102:'Processing',
    118 :'Connection timed out',
    200 : 'OK',
    201 : 'Created',
    202 : 'Accepted',
    203 : 'Non-Authoritative',
    204 : 'No Content',
    205 : 'Reset Content',
    206 : 'Partial Content',
    207 : 'Multi-Status',
    208 : 'Already Reported',
    210 : 'Content Different',
    226 : 'IM Used',
    300 : 'Multiple Choices',
    301 : 'Moved Permanently',
    302 : 'Found',
    303 : 'See Other',
    304 : 'Not Modified',
    305 : 'Use Proxy',
    306 : 'Reserved',
    307 : 'Temporary Redirect',
    308 : 'Permanent Redirect',
    310 : 'Too many Redirect',
    400 : 'Bad Request',
    401 : 'Unauthorized',
    402 : 'Payment Required',
    403 : 'Forbidden',
    404 : 'Not Found',
    405 : 'Method Not Allowed',
    406 : 'Not Acceptable',
    407 : 'Proxy Authentication Required',
    408 : 'Request Time-out',
    409 : 'Conflict',
    410 : 'Gone',
    411 : 'Length Required',
    412 : 'Precondition Failed',
    413 : 'Request Entity Too Large',
    414 : 'Request-URI Too Long',
    415 : 'Unsupported Media Type',
    416 : 'Requested range unsatisfiable',
    417 : 'Expectation failed',
    418 : 'I'm a teapot',
    422 : 'Unprocessable entity',
    423 : 'Locked',
    424 : 'Method failure',
    425 : 'Unordered Collection',
    426 : 'Upgrade Required',
    428 : 'Precondition Required',
    429 : 'Too Many Requests',
    431 : 'Request Header Fields Too Large',
    449 : 'Retry With',
    450 : 'Blocked by Windows Parental Controls',
    500 : 'Internal Server Error',
    501 : 'Not Implemented',
    502 : 'Bad Gateway or Proxy Error',
    503 : 'Service Unavailable',
    504 : 'Gateway Time-out',
    505 : 'HTTP Version not supported',
    507 : 'Insufficient storage',
    508 : 'Loop Detected',
    509 : 'Bandwidth Limit Exceeded',
    510 : 'Not Extended',
    511 : 'Network Authentication Required',
    }

代码中:

@classmethod      
def get_status_code(cls, modules_path=None):
    u'''获取到当前页面链接,校验返回状态码:若成功或者重定向,返回True,否则False'''    
 now_url = cls.driver.current_url       
 r = requests.get(now_url+modules_path).status_code    
 code = {        400,        401,        402,        403,        404,        405,        406,        407,        408,        409,        410,        411,        412,        413,        414,        415,        416,        417,        418,        422,        423,        424,        425,        426,        428,        429,        431,        449,        450,        500,        501,        502,        503,        504,        505,        507,        508,        509,        510,        511    }    
 for f in code:        
    if f != r:
        return True
    else:
        return False
@classmethod
def Processing_page_state(cls, msg):
u'''    处理页面返回状态码,若状态码=True,则通过,否则抛出异常
:param msg:
:return:    '''
if Operation.get_status_code(modules_path=None):
    pass
else:
    raise customError(msg)

你可能感兴趣的:(selenium_页面(status code)状态码校验)