[ python-Feature Requests-1216944 ] Add Error Code Dictionary to urllib2

SourceForge.net noreply at sourceforge.net
Wed Jun 8 11:45:28 CEST 2005


Feature Requests item #1216944, was opened at 2005-06-08 09:45
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1216944&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Python Library
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Mike Foord (mjfoord)
Assigned to: Nobody/Anonymous (nobody)
Summary: Add Error Code Dictionary to urllib2

Initial Comment:
In order to properly handle 'HTTPError's from 
urllib2.urlopen you need to map error codes to an error 
message.

I suggest the addition of the following dictionary to do 
that  :

    # Table mapping response codes to messages; 
entries have the
    # form {code: (shortmessage, longmessage)}.
    httpresponses = {
        100: ('Continue', 'Request received, please 
continue'),
        101: ('Switching Protocols',
              'Switching to new protocol; obey Upgrade 
header'),

        200: ('OK', 'Request fulfilled, document follows'),
        201: ('Created', 'Document created, URL follows'),
        202: ('Accepted',
              'Request accepted, processing continues off-
line'),
        203: ('Non-Authoritative Information', 'Request 
fulfilled from cache'),
        204: ('No response', 'Request fulfilled, nothing 
follows'),
        205: ('Reset Content', 'Clear input form for further 
input.'),
        206: ('Partial Content', 'Partial content follows.'),

        300: ('Multiple Choices',
              'Object has several resources -- see URI list'),
        301: ('Moved Permanently', 'Object moved 
permanently -- see URI list'),
        302: ('Found', 'Object moved temporarily -- see URI 
list'),
        303: ('See Other', 'Object moved -- see Method 
and URL list'),
        304: ('Not modified',
              'Document has not changed since given time'),
        305: ('Use Proxy',
              'You must use proxy specified in Location to 
access this '
              'resource.'),
        307: ('Temporary Redirect',
              'Object moved temporarily -- see URI list'),

        400: ('Bad request',
              'Bad request syntax or unsupported method'),
        401: ('Unauthorized',
              'No permission -- see authorization schemes'),
        402: ('Payment required',
              'No payment -- see charging schemes'),
        403: ('Forbidden',
              'Request forbidden -- authorization will not 
help'),
        404: ('Not Found', 'Nothing matches the given URI'),
        405: ('Method Not Allowed',
              'Specified method is invalid for this server.'),
        406: ('Not Acceptable', 'URI not available in 
preferred format.'),
        407: ('Proxy Authentication Required', 'You must 
authenticate with '
              'this proxy before proceeding.'),
        408: ('Request Time-out', 'Request timed out; try 
again later.'),
        409: ('Conflict', 'Request conflict.'),
        410: ('Gone',
              'URI no longer exists and has been 
permanently removed.'),
        411: ('Length Required', 'Client must specify 
Content-Length.'),
        412: ('Precondition Failed', 'Precondition in 
headers is false.'),
        413: ('Request Entity Too Large', 'Entity is too 
large.'),
        414: ('Request-URI Too Long', 'URI is too long.'),
        415: ('Unsupported Media Type', 'Entity body in 
unsupported format.'),
        416: ('Requested Range Not Satisfiable',
              'Cannot satisfy request range.'),
        417: ('Expectation Failed',
              'Expect condition could not be satisfied.'),

        500: ('Internal error', 'Server got itself in trouble'),
        501: ('Not Implemented',
              'Server does not support this operation'),
        502: ('Bad Gateway', 'Invalid responses from 
another server/proxy.'),
        503: ('Service temporarily overloaded',
              'The server cannot process the request due to 
a high load'),
        504: ('Gateway timeout',
              'The gateway server did not receive a timely 
response'),
        505: ('HTTP Version not supported', 'Cannot fulfill 
request.'),
        }

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=355470&aid=1216944&group_id=5470


More information about the Python-bugs-list mailing list