selenium_페이지(status code) 상태 코드 검사

3402 단어
4
  • 방문한 웹 페이지가 정상적으로 열려 있는지 확인하는데 비교적 간단한 방법은 상태 코드가 200인지 확인하는 것이다.그래서 특별히 상용 상태 코드를 정리했습니다. 코드={ 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)

    좋은 웹페이지 즐겨찾기