# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001-2016, Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-04-02 22:11+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: ../Doc/library/urllib.request.rst:2
msgid ":mod:`urllib.request` --- Extensible library for opening URLs"
msgstr ""

#: ../Doc/library/urllib.request.rst:11
msgid "**Source code:** :source:`Lib/urllib/request.py`"
msgstr ""

#: ../Doc/library/urllib.request.rst:15
msgid ""
"The :mod:`urllib.request` module defines functions and classes which help in "
"opening URLs (mostly HTTP) in a complex world --- basic and digest "
"authentication, redirections, cookies and more."
msgstr ""

#: ../Doc/library/urllib.request.rst:21
msgid ""
"The `Requests package <http://docs.python-requests.org/>`_ is recommended "
"for a higher-level HTTP client interface."
msgstr ""

#: ../Doc/library/urllib.request.rst:25
msgid "The :mod:`urllib.request` module defines the following functions:"
msgstr ""

#: ../Doc/library/urllib.request.rst:30
msgid ""
"Open the URL *url*, which can be either a string or a :class:`Request` "
"object."
msgstr ""

#: ../Doc/library/urllib.request.rst:33
msgid ""
"*data* must be an object specifying additional data to be sent to the "
"server, or ``None`` if no such data is needed.  See :class:`Request` for "
"details."
msgstr ""

#: ../Doc/library/urllib.request.rst:37
msgid ""
"urllib.request module uses HTTP/1.1 and includes ``Connection:close`` header "
"in its HTTP requests."
msgstr ""

#: ../Doc/library/urllib.request.rst:40
msgid ""
"The optional *timeout* parameter specifies a timeout in seconds for blocking "
"operations like the connection attempt (if not specified, the global default "
"timeout setting will be used).  This actually only works for HTTP, HTTPS and "
"FTP connections."
msgstr ""

#: ../Doc/library/urllib.request.rst:45
msgid ""
"If *context* is specified, it must be a :class:`ssl.SSLContext` instance "
"describing the various SSL options. See :class:`~http.client."
"HTTPSConnection` for more details."
msgstr ""

#: ../Doc/library/urllib.request.rst:49
msgid ""
"The optional *cafile* and *capath* parameters specify a set of trusted CA "
"certificates for HTTPS requests.  *cafile* should point to a single file "
"containing a bundle of CA certificates, whereas *capath* should point to a "
"directory of hashed certificate files.  More information can be found in :"
"meth:`ssl.SSLContext.load_verify_locations`."
msgstr ""

#: ../Doc/library/urllib.request.rst:55
msgid "The *cadefault* parameter is ignored."
msgstr ""

#: ../Doc/library/urllib.request.rst:57
msgid ""
"This function always returns an object which can work as a :term:`context "
"manager` and has methods such as"
msgstr ""

#: ../Doc/library/urllib.request.rst:60
msgid ""
":meth:`~urllib.response.addinfourl.geturl` --- return the URL of the "
"resource retrieved, commonly used to determine if a redirect was followed"
msgstr ""

#: ../Doc/library/urllib.request.rst:63
msgid ""
":meth:`~urllib.response.addinfourl.info` --- return the meta-information of "
"the page, such as headers, in the form of an :func:`email."
"message_from_string` instance (see `Quick Reference to HTTP Headers <https://"
"www.cs.tut.fi/~jkorpela/http.html>`_)"
msgstr ""

#: ../Doc/library/urllib.request.rst:67
msgid ""
":meth:`~urllib.response.addinfourl.getcode` -- return the HTTP status code "
"of the response."
msgstr ""

#: ../Doc/library/urllib.request.rst:69
msgid ""
"For HTTP and HTTPS URLs, this function returns a :class:`http.client."
"HTTPResponse` object slightly modified. In addition to the three new methods "
"above, the msg attribute contains the same information as the :attr:`~http."
"client.HTTPResponse.reason` attribute --- the reason phrase returned by "
"server --- instead of the response headers as it is specified in the "
"documentation for :class:`~http.client.HTTPResponse`."
msgstr ""

#: ../Doc/library/urllib.request.rst:77
msgid ""
"For FTP, file, and data URLs and requests explicitly handled by legacy :"
"class:`URLopener` and :class:`FancyURLopener` classes, this function returns "
"a :class:`urllib.response.addinfourl` object."
msgstr ""

#: ../Doc/library/urllib.request.rst:81
msgid "Raises :exc:`~urllib.error.URLError` on protocol errors."
msgstr ""

#: ../Doc/library/urllib.request.rst:83
msgid ""
"Note that ``None`` may be returned if no handler handles the request (though "
"the default installed global :class:`OpenerDirector` uses :class:"
"`UnknownHandler` to ensure this never happens)."
msgstr ""

#: ../Doc/library/urllib.request.rst:87
msgid ""
"In addition, if proxy settings are detected (for example, when a ``*_proxy`` "
"environment variable like :envvar:`http_proxy` is set), :class:"
"`ProxyHandler` is default installed and makes sure the requests are handled "
"through the proxy."
msgstr ""

#: ../Doc/library/urllib.request.rst:92
msgid ""
"The legacy ``urllib.urlopen`` function from Python 2.6 and earlier has been "
"discontinued; :func:`urllib.request.urlopen` corresponds to the old "
"``urllib2.urlopen``.  Proxy handling, which was done by passing a dictionary "
"parameter to ``urllib.urlopen``, can be obtained by using :class:"
"`ProxyHandler` objects."
msgstr ""

#: ../Doc/library/urllib.request.rst:98
msgid "*cafile* and *capath* were added."
msgstr ""

#: ../Doc/library/urllib.request.rst:101
msgid ""
"HTTPS virtual hosts are now supported if possible (that is, if :data:`ssl."
"HAS_SNI` is true)."
msgstr ""

#: ../Doc/library/urllib.request.rst:105
msgid "*data* can be an iterable object."
msgstr ""

#: ../Doc/library/urllib.request.rst:108
msgid "*cadefault* was added."
msgstr ""

#: ../Doc/library/urllib.request.rst:111
msgid "*context* was added."
msgstr ""

#: ../Doc/library/urllib.request.rst:116
msgid ""
"*cafile*, *capath* and *cadefault* are deprecated in favor of *context*. "
"Please use :meth:`ssl.SSLContext.load_cert_chain` instead, or let :func:`ssl."
"create_default_context` select the system's trusted CA certificates for you."
msgstr ""

#: ../Doc/library/urllib.request.rst:123
msgid ""
"Install an :class:`OpenerDirector` instance as the default global opener. "
"Installing an opener is only necessary if you want urlopen to use that "
"opener; otherwise, simply call :meth:`OpenerDirector.open` instead of :func:"
"`~urllib.request.urlopen`.  The code does not check for a real :class:"
"`OpenerDirector`, and any class with the appropriate interface will work."
msgstr ""

#: ../Doc/library/urllib.request.rst:133
msgid ""
"Return an :class:`OpenerDirector` instance, which chains the handlers in the "
"order given. *handler*\\s can be either instances of :class:`BaseHandler`, "
"or subclasses of :class:`BaseHandler` (in which case it must be possible to "
"call the constructor without any parameters).  Instances of the following "
"classes will be in front of the *handler*\\s, unless the *handler*\\s "
"contain them, instances of them or subclasses of them: :class:`ProxyHandler` "
"(if proxy settings are detected), :class:`UnknownHandler`, :class:"
"`HTTPHandler`, :class:`HTTPDefaultErrorHandler`, :class:"
"`HTTPRedirectHandler`, :class:`FTPHandler`, :class:`FileHandler`, :class:"
"`HTTPErrorProcessor`."
msgstr ""

#: ../Doc/library/urllib.request.rst:143
msgid ""
"If the Python installation has SSL support (i.e., if the :mod:`ssl` module "
"can be imported), :class:`HTTPSHandler` will also be added."
msgstr ""

#: ../Doc/library/urllib.request.rst:146
msgid ""
"A :class:`BaseHandler` subclass may also change its :attr:`handler_order` "
"attribute to modify its position in the handlers list."
msgstr ""

#: ../Doc/library/urllib.request.rst:152
msgid ""
"Convert the pathname *path* from the local syntax for a path to the form "
"used in the path component of a URL.  This does not produce a complete URL.  "
"The return value will already be quoted using the :func:`~urllib.parse."
"quote` function."
msgstr ""

#: ../Doc/library/urllib.request.rst:159
msgid ""
"Convert the path component *path* from a percent-encoded URL to the local "
"syntax for a path.  This does not accept a complete URL.  This function "
"uses :func:`~urllib.parse.unquote` to decode *path*."
msgstr ""

#: ../Doc/library/urllib.request.rst:165
msgid ""
"This helper function returns a dictionary of scheme to proxy server URL "
"mappings. It scans the environment for variables named ``<scheme>_proxy``, "
"in a case insensitive approach, for all operating systems first, and when it "
"cannot find it, looks for proxy information from Mac OSX System "
"Configuration for Mac OS X and Windows Systems Registry for Windows. If both "
"lowercase and uppercase environment variables exist (and disagree), "
"lowercase is preferred."
msgstr ""

#: ../Doc/library/urllib.request.rst:175
msgid ""
"If the environment variable ``REQUEST_METHOD`` is set, which usually "
"indicates your script is running in a CGI environment, the environment "
"variable ``HTTP_PROXY`` (uppercase ``_PROXY``) will be ignored. This is "
"because that variable can be injected by a client using the \"Proxy:\" HTTP "
"header. If you need to use an HTTP proxy in a CGI environment, either use "
"``ProxyHandler`` explicitly, or make sure the variable name is in lowercase "
"(or at least the ``_proxy`` suffix)."
msgstr ""

#: ../Doc/library/urllib.request.rst:184
msgid "The following classes are provided:"
msgstr ""

#: ../Doc/library/urllib.request.rst:188
msgid "This class is an abstraction of a URL request."
msgstr ""

#: ../Doc/library/urllib.request.rst:190
msgid "*url* should be a string containing a valid URL."
msgstr ""

#: ../Doc/library/urllib.request.rst:192
msgid ""
"*data* must be an object specifying additional data to send to the server, "
"or ``None`` if no such data is needed.  Currently HTTP requests are the only "
"ones that use *data*.  The supported object types include bytes, file-like "
"objects, and iterables.  If no ``Content-Length`` nor ``Transfer-Encoding`` "
"header field has been provided, :class:`HTTPHandler` will set these headers "
"according to the type of *data*.  ``Content-Length`` will be used to send "
"bytes objects, while ``Transfer-Encoding: chunked`` as specified in :rfc:"
"`7230`, Section 3.3.1 will be used to send files and other iterables."
msgstr ""

#: ../Doc/library/urllib.request.rst:202
msgid ""
"For an HTTP POST request method, *data* should be a buffer in the standard :"
"mimetype:`application/x-www-form-urlencoded` format.  The :func:`urllib."
"parse.urlencode` function takes a mapping or sequence of 2-tuples and "
"returns an ASCII string in this format. It should be encoded to bytes before "
"being used as the *data* parameter."
msgstr ""

#: ../Doc/library/urllib.request.rst:208
msgid ""
"*headers* should be a dictionary, and will be treated as if :meth:"
"`add_header` was called with each key and value as arguments. This is often "
"used to \"spoof\" the ``User-Agent`` header value, which is used by a "
"browser to identify itself -- some HTTP servers only allow requests coming "
"from common browsers as opposed to scripts. For example, Mozilla Firefox may "
"identify itself as ``\"Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 "
"Firefox/2.0.0.11\"``, while :mod:`urllib`'s default user agent string is ``"
"\"Python-urllib/2.6\"`` (on Python 2.6)."
msgstr ""

#: ../Doc/library/urllib.request.rst:218
msgid ""
"An appropriate ``Content-Type`` header should be included if the *data* "
"argument is present.  If this header has not been provided and *data* is not "
"None, ``Content-Type: application/x-www-form-urlencoded`` will be added as a "
"default."
msgstr ""

#: ../Doc/library/urllib.request.rst:223
msgid ""
"The final two arguments are only of interest for correct handling of third-"
"party HTTP cookies:"
msgstr ""

#: ../Doc/library/urllib.request.rst:226
msgid ""
"*origin_req_host* should be the request-host of the origin transaction, as "
"defined by :rfc:`2965`.  It defaults to ``http.cookiejar."
"request_host(self)``.  This is the host name or IP address of the original "
"request that was initiated by the user. For example, if the request is for "
"an image in an HTML document, this should be the request-host of the request "
"for the page containing the image."
msgstr ""

#: ../Doc/library/urllib.request.rst:234
msgid ""
"*unverifiable* should indicate whether the request is unverifiable, as "
"defined by RFC 2965.  It defaults to ``False``.  An unverifiable request is "
"one whose URL the user did not have the option to approve.  For example, if "
"the request is for an image in an HTML document, and the user had no option "
"to approve the automatic fetching of the image, this should be true."
msgstr ""

#: ../Doc/library/urllib.request.rst:241
msgid ""
"*method* should be a string that indicates the HTTP request method that will "
"be used (e.g. ``'HEAD'``).  If provided, its value is stored in the :attr:"
"`~Request.method` attribute and is used by :meth:`get_method()`. The default "
"is ``'GET'`` if *data* is ``None`` or ``'POST'`` otherwise. Subclasses may "
"indicate a different default method by setting the :attr:`~Request.method` "
"attribute in the class itself."
msgstr ""

#: ../Doc/library/urllib.request.rst:249
msgid ""
"The request will not work as expected if the data object is unable to "
"deliver its content more than once (e.g. a file or an iterable that can "
"produce the content only once) and the request is retried for HTTP redirects "
"or authentication.  The *data* is sent to the HTTP server right away after "
"the headers.  There is no support for a 100-continue expectation in the "
"library."
msgstr ""

#: ../Doc/library/urllib.request.rst:256
msgid ":attr:`Request.method` argument is added to the Request class."
msgstr ""

#: ../Doc/library/urllib.request.rst:259
msgid "Default :attr:`Request.method` may be indicated at the class level."
msgstr ""

#: ../Doc/library/urllib.request.rst:262
msgid ""
"Do not raise an error if the ``Content-Length`` has not been provided and "
"*data* is neither ``None`` nor a bytes object. Fall back to use chunked "
"transfer encoding instead."
msgstr ""

#: ../Doc/library/urllib.request.rst:269
msgid ""
"The :class:`OpenerDirector` class opens URLs via :class:`BaseHandler`\\ s "
"chained together. It manages the chaining of handlers, and recovery from "
"errors."
msgstr ""

#: ../Doc/library/urllib.request.rst:275
msgid ""
"This is the base class for all registered handlers --- and handles only the "
"simple mechanics of registration."
msgstr ""

#: ../Doc/library/urllib.request.rst:281
msgid ""
"A class which defines a default handler for HTTP error responses; all "
"responses are turned into :exc:`~urllib.error.HTTPError` exceptions."
msgstr ""

#: ../Doc/library/urllib.request.rst:287
msgid "A class to handle redirections."
msgstr ""

#: ../Doc/library/urllib.request.rst:292
msgid "A class to handle HTTP Cookies."
msgstr ""

#: ../Doc/library/urllib.request.rst:297
msgid ""
"Cause requests to go through a proxy. If *proxies* is given, it must be a "
"dictionary mapping protocol names to URLs of proxies. The default is to read "
"the list of proxies from the environment variables :envvar:"
"`<protocol>_proxy`.  If no proxy environment variables are set, then in a "
"Windows environment proxy settings are obtained from the registry's Internet "
"Settings section, and in a Mac OS X environment proxy information is "
"retrieved from the OS X System Configuration Framework."
msgstr ""

#: ../Doc/library/urllib.request.rst:305
msgid "To disable autodetected proxy pass an empty dictionary."
msgstr ""

#: ../Doc/library/urllib.request.rst:307
msgid ""
"The :envvar:`no_proxy` environment variable can be used to specify hosts "
"which shouldn't be reached via proxy; if set, it should be a comma-separated "
"list of hostname suffixes, optionally with ``:port`` appended, for example "
"``cern.ch,ncsa.uiuc.edu,some.host:8080``."
msgstr ""

#: ../Doc/library/urllib.request.rst:314
msgid ""
"``HTTP_PROXY`` will be ignored if a variable ``REQUEST_METHOD`` is set; see "
"the documentation on :func:`~urllib.request.getproxies`."
msgstr ""

#: ../Doc/library/urllib.request.rst:320
msgid "Keep a database of  ``(realm, uri) -> (user, password)`` mappings."
msgstr ""

#: ../Doc/library/urllib.request.rst:325
msgid ""
"Keep a database of  ``(realm, uri) -> (user, password)`` mappings. A realm "
"of ``None`` is considered a catch-all realm, which is searched if no other "
"realm fits."
msgstr ""

#: ../Doc/library/urllib.request.rst:332
msgid ""
"A variant of :class:`HTTPPasswordMgrWithDefaultRealm` that also has a "
"database of ``uri -> is_authenticated`` mappings.  Can be used by a "
"BasicAuth handler to determine when to send authentication credentials "
"immediately instead of waiting for a ``401`` response first."
msgstr ""

#: ../Doc/library/urllib.request.rst:342
msgid ""
"This is a mixin class that helps with HTTP authentication, both to the "
"remote host and to a proxy. *password_mgr*, if given, should be something "
"that is compatible with :class:`HTTPPasswordMgr`; refer to section :ref:"
"`http-password-mgr` for information on the interface that must be "
"supported.  If *passwd_mgr* also provides ``is_authenticated`` and "
"``update_authenticated`` methods (see :ref:`http-password-mgr-with-prior-"
"auth`), then the handler will use the ``is_authenticated`` result for a "
"given URI to determine whether or not to send authentication credentials "
"with the request.  If ``is_authenticated`` returns ``True`` for the URI, "
"credentials are sent.  If ``is_authenticated`` is ``False``, credentials are "
"not sent, and then if a ``401`` response is received the request is re-sent "
"with the authentication credentials.  If authentication succeeds, "
"``update_authenticated`` is called to set ``is_authenticated`` ``True`` for "
"the URI, so that subsequent requests to the URI or any of its super-URIs "
"will automatically include the authentication credentials."
msgstr ""

#: ../Doc/library/urllib.request.rst:359
msgid "Added ``is_authenticated`` support."
msgstr ""

#: ../Doc/library/urllib.request.rst:365
msgid ""
"Handle authentication with the remote host. *password_mgr*, if given, should "
"be something that is compatible with :class:`HTTPPasswordMgr`; refer to "
"section :ref:`http-password-mgr` for information on the interface that must "
"be supported. HTTPBasicAuthHandler will raise a :exc:`ValueError` when "
"presented with a wrong Authentication scheme."
msgstr ""

#: ../Doc/library/urllib.request.rst:374 ../Doc/library/urllib.request.rst:408
msgid ""
"Handle authentication with the proxy. *password_mgr*, if given, should be "
"something that is compatible with :class:`HTTPPasswordMgr`; refer to "
"section :ref:`http-password-mgr` for information on the interface that must "
"be supported."
msgstr ""

#: ../Doc/library/urllib.request.rst:382
msgid ""
"This is a mixin class that helps with HTTP authentication, both to the "
"remote host and to a proxy. *password_mgr*, if given, should be something "
"that is compatible with :class:`HTTPPasswordMgr`; refer to section :ref:"
"`http-password-mgr` for information on the interface that must be supported."
msgstr ""

#: ../Doc/library/urllib.request.rst:391
msgid ""
"Handle authentication with the remote host. *password_mgr*, if given, should "
"be something that is compatible with :class:`HTTPPasswordMgr`; refer to "
"section :ref:`http-password-mgr` for information on the interface that must "
"be supported. When both Digest Authentication Handler and Basic "
"Authentication Handler are both added, Digest Authentication is always tried "
"first. If the Digest Authentication returns a 40x response again, it is sent "
"to Basic Authentication handler to Handle.  This Handler method will raise "
"a :exc:`ValueError` when presented with an authentication scheme other than "
"Digest or Basic."
msgstr ""

#: ../Doc/library/urllib.request.rst:401
msgid "Raise :exc:`ValueError` on unsupported Authentication Scheme."
msgstr ""

#: ../Doc/library/urllib.request.rst:416
msgid "A class to handle opening of HTTP URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:421
msgid ""
"A class to handle opening of HTTPS URLs.  *context* and *check_hostname* "
"have the same meaning as in :class:`http.client.HTTPSConnection`."
msgstr ""

#: ../Doc/library/urllib.request.rst:424
msgid "*context* and *check_hostname* were added."
msgstr ""

#: ../Doc/library/urllib.request.rst:430
msgid "Open local files."
msgstr ""

#: ../Doc/library/urllib.request.rst:434
msgid "Open data URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:440
msgid "Open FTP URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:445
msgid ""
"Open FTP URLs, keeping a cache of open FTP connections to minimize delays."
msgstr ""

#: ../Doc/library/urllib.request.rst:450
msgid "A catch-all class to handle unknown URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:455 ../Doc/library/urllib.request.rst:1130
msgid "Process HTTP error responses."
msgstr ""

#: ../Doc/library/urllib.request.rst:461
msgid "Request Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:463
msgid ""
"The following methods describe :class:`Request`'s public interface, and so "
"all may be overridden in subclasses.  It also defines several public "
"attributes that can be used by clients to inspect the parsed request."
msgstr ""

#: ../Doc/library/urllib.request.rst:470
msgid "The original URL passed to the constructor."
msgstr ""

#: ../Doc/library/urllib.request.rst:474
msgid ""
"Request.full_url is a property with setter, getter and a deleter. Getting :"
"attr:`~Request.full_url` returns the original request URL with the fragment, "
"if it was present."
msgstr ""

#: ../Doc/library/urllib.request.rst:480
msgid "The URI scheme."
msgstr ""

#: ../Doc/library/urllib.request.rst:484
msgid ""
"The URI authority, typically a host, but may also contain a port separated "
"by a colon."
msgstr ""

#: ../Doc/library/urllib.request.rst:489
msgid "The original host for the request, without port."
msgstr ""

#: ../Doc/library/urllib.request.rst:493
msgid ""
"The URI path.  If the :class:`Request` uses a proxy, then selector will be "
"the full URL that is passed to the proxy."
msgstr ""

#: ../Doc/library/urllib.request.rst:498
msgid "The entity body for the request, or ``None`` if not specified."
msgstr ""

#: ../Doc/library/urllib.request.rst:500
msgid ""
"Changing value of :attr:`Request.data` now deletes \"Content-Length\" header "
"if it was previously set or calculated."
msgstr ""

#: ../Doc/library/urllib.request.rst:506
msgid ""
"boolean, indicates whether the request is unverifiable as defined by RFC "
"2965."
msgstr ""

#: ../Doc/library/urllib.request.rst:511
msgid ""
"The HTTP request method to use.  By default its value is :const:`None`, "
"which means that :meth:`~Request.get_method` will do its normal computation "
"of the method to be used.  Its value can be set (thus overriding the default "
"computation in :meth:`~Request.get_method`) either by providing a default "
"value by setting it at the class level in a :class:`Request` subclass, or by "
"passing a value in to the :class:`Request` constructor via the *method* "
"argument."
msgstr ""

#: ../Doc/library/urllib.request.rst:521
msgid ""
"A default value can now be set in subclasses; previously it could only be "
"set via the constructor argument."
msgstr ""

#: ../Doc/library/urllib.request.rst:528
msgid ""
"Return a string indicating the HTTP request method.  If :attr:`Request."
"method` is not ``None``, return its value, otherwise return ``'GET'`` if :"
"attr:`Request.data` is ``None``, or ``'POST'`` if it's not. This is only "
"meaningful for HTTP requests."
msgstr ""

#: ../Doc/library/urllib.request.rst:533
msgid "get_method now looks at the value of :attr:`Request.method`."
msgstr ""

#: ../Doc/library/urllib.request.rst:539
msgid ""
"Add another header to the request.  Headers are currently ignored by all "
"handlers except HTTP handlers, where they are added to the list of headers "
"sent to the server.  Note that there cannot be more than one header with the "
"same name, and later calls will overwrite previous calls in case the *key* "
"collides. Currently, this is no loss of HTTP functionality, since all "
"headers which have meaning when used more than once have a (header-specific) "
"way of gaining the same functionality using only one header."
msgstr ""

#: ../Doc/library/urllib.request.rst:550
msgid "Add a header that will not be added to a redirected request."
msgstr ""

#: ../Doc/library/urllib.request.rst:555
msgid ""
"Return whether the instance has the named header (checks both regular and "
"unredirected)."
msgstr ""

#: ../Doc/library/urllib.request.rst:561
msgid ""
"Remove named header from the request instance (both from regular and "
"unredirected headers)."
msgstr ""

#: ../Doc/library/urllib.request.rst:569
msgid "Return the URL given in the constructor."
msgstr ""

#: ../Doc/library/urllib.request.rst:573
msgid "Returns :attr:`Request.full_url`"
msgstr ""

#: ../Doc/library/urllib.request.rst:578
msgid ""
"Prepare the request by connecting to a proxy server. The *host* and *type* "
"will replace those of the instance, and the instance's selector will be the "
"original URL given in the constructor."
msgstr ""

#: ../Doc/library/urllib.request.rst:585
msgid ""
"Return the value of the given header. If the header is not present, return "
"the default value."
msgstr ""

#: ../Doc/library/urllib.request.rst:591
msgid ""
"Return a list of tuples (header_name, header_value) of the Request headers."
msgstr ""

#: ../Doc/library/urllib.request.rst:593
msgid ""
"The request methods add_data, has_data, get_data, get_type, get_host, "
"get_selector, get_origin_req_host and is_unverifiable that were deprecated "
"since 3.3 have been removed."
msgstr ""

#: ../Doc/library/urllib.request.rst:602
msgid "OpenerDirector Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:604
msgid ":class:`OpenerDirector` instances have the following methods:"
msgstr ""

#: ../Doc/library/urllib.request.rst:609
msgid ""
"*handler* should be an instance of :class:`BaseHandler`.  The following "
"methods are searched, and added to the possible chains (note that HTTP "
"errors are a special case)."
msgstr ""

#: ../Doc/library/urllib.request.rst:613
msgid ""
":meth:`protocol_open` --- signal that the handler knows how to open "
"*protocol* URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:616
msgid ""
":meth:`http_error_type` --- signal that the handler knows how to handle HTTP "
"errors with HTTP error code *type*."
msgstr ""

#: ../Doc/library/urllib.request.rst:619
msgid ""
":meth:`protocol_error` --- signal that the handler knows how to handle "
"errors from (non-\\ ``http``) *protocol*."
msgstr ""

#: ../Doc/library/urllib.request.rst:622
msgid ""
":meth:`protocol_request` --- signal that the handler knows how to pre-"
"process *protocol* requests."
msgstr ""

#: ../Doc/library/urllib.request.rst:625
msgid ""
":meth:`protocol_response` --- signal that the handler knows how to post-"
"process *protocol* responses."
msgstr ""

#: ../Doc/library/urllib.request.rst:631
msgid ""
"Open the given *url* (which can be a request object or a string), optionally "
"passing the given *data*. Arguments, return values and exceptions raised are "
"the same as those of :func:`urlopen` (which simply calls the :meth:`open` "
"method on the currently installed global :class:`OpenerDirector`).  The "
"optional *timeout* parameter specifies a timeout in seconds for blocking "
"operations like the connection attempt (if not specified, the global default "
"timeout setting will be used). The timeout feature actually works only for "
"HTTP, HTTPS and FTP connections)."
msgstr ""

#: ../Doc/library/urllib.request.rst:643
msgid ""
"Handle an error of the given protocol.  This will call the registered error "
"handlers for the given protocol with the given arguments (which are protocol "
"specific).  The HTTP protocol is a special case which uses the HTTP response "
"code to determine the specific error handler; refer to the :meth:`http_error_"
"\\*` methods of the handler classes."
msgstr ""

#: ../Doc/library/urllib.request.rst:649
msgid ""
"Return values and exceptions raised are the same as those of :func:`urlopen`."
msgstr ""

#: ../Doc/library/urllib.request.rst:651
msgid "OpenerDirector objects open URLs in three stages:"
msgstr ""

#: ../Doc/library/urllib.request.rst:653
msgid ""
"The order in which these methods are called within each stage is determined "
"by sorting the handler instances."
msgstr ""

#: ../Doc/library/urllib.request.rst:656
msgid ""
"Every handler with a method named like :meth:`protocol_request` has that "
"method called to pre-process the request."
msgstr ""

#: ../Doc/library/urllib.request.rst:659
msgid ""
"Handlers with a method named like :meth:`protocol_open` are called to handle "
"the request. This stage ends when a handler either returns a non-\\ :const:"
"`None` value (ie. a response), or raises an exception (usually :exc:`~urllib."
"error.URLError`).  Exceptions are allowed to propagate."
msgstr ""

#: ../Doc/library/urllib.request.rst:664
msgid ""
"In fact, the above algorithm is first tried for methods named :meth:"
"`default_open`.  If all such methods return :const:`None`, the algorithm is "
"repeated for methods named like :meth:`protocol_open`.  If all such methods "
"return :const:`None`, the algorithm is repeated for methods named :meth:"
"`unknown_open`."
msgstr ""

#: ../Doc/library/urllib.request.rst:670
msgid ""
"Note that the implementation of these methods may involve calls of the "
"parent :class:`OpenerDirector` instance's :meth:`~OpenerDirector.open` and :"
"meth:`~OpenerDirector.error` methods."
msgstr ""

#: ../Doc/library/urllib.request.rst:674
msgid ""
"Every handler with a method named like :meth:`protocol_response` has that "
"method called to post-process the response."
msgstr ""

#: ../Doc/library/urllib.request.rst:681
msgid "BaseHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:683
msgid ""
":class:`BaseHandler` objects provide a couple of methods that are directly "
"useful, and others that are meant to be used by derived classes.  These are "
"intended for direct use:"
msgstr ""

#: ../Doc/library/urllib.request.rst:690
msgid "Add a director as parent."
msgstr ""

#: ../Doc/library/urllib.request.rst:695
msgid "Remove any parents."
msgstr ""

#: ../Doc/library/urllib.request.rst:697
msgid ""
"The following attribute and methods should only be used by classes derived "
"from :class:`BaseHandler`."
msgstr ""

#: ../Doc/library/urllib.request.rst:702
msgid ""
"The convention has been adopted that subclasses defining :meth:"
"`protocol_request` or :meth:`protocol_response` methods are named :class:`"
"\\*Processor`; all others are named :class:`\\*Handler`."
msgstr ""

#: ../Doc/library/urllib.request.rst:709
msgid ""
"A valid :class:`OpenerDirector`, which can be used to open using a different "
"protocol, or handle errors."
msgstr ""

#: ../Doc/library/urllib.request.rst:715
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"define it if they want to catch all URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:718
msgid ""
"This method, if implemented, will be called by the parent :class:"
"`OpenerDirector`.  It should return a file-like object as described in the "
"return value of the :meth:`open` of :class:`OpenerDirector`, or ``None``. It "
"should raise :exc:`~urllib.error.URLError`, unless a truly exceptional thing "
"happens (for example, :exc:`MemoryError` should not be mapped to :exc:"
"`URLError`)."
msgstr ""

#: ../Doc/library/urllib.request.rst:725
msgid "This method will be called before any protocol-specific open method."
msgstr ""

#: ../Doc/library/urllib.request.rst:731
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"define it if they want to handle URLs with the given protocol."
msgstr ""

#: ../Doc/library/urllib.request.rst:734
msgid ""
"This method, if defined, will be called by the parent :class:"
"`OpenerDirector`. Return values should be the same as for  :meth:"
"`default_open`."
msgstr ""

#: ../Doc/library/urllib.request.rst:740
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"define it if they want to catch all URLs with no specific registered handler "
"to open it."
msgstr ""

#: ../Doc/library/urllib.request.rst:744
msgid ""
"This method, if implemented, will be called by the :attr:`parent` :class:"
"`OpenerDirector`.  Return values should be the same as for :meth:"
"`default_open`."
msgstr ""

#: ../Doc/library/urllib.request.rst:751
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"override it if they intend to provide a catch-all for otherwise unhandled "
"HTTP errors.  It will be called automatically by the  :class:"
"`OpenerDirector` getting the error, and should not normally be called in "
"other circumstances."
msgstr ""

#: ../Doc/library/urllib.request.rst:756
msgid ""
"*req* will be a :class:`Request` object, *fp* will be a file-like object "
"with the HTTP error body, *code* will be the three-digit code of the error, "
"*msg* will be the user-visible explanation of the code and *hdrs* will be a "
"mapping object with the headers of the error."
msgstr ""

#: ../Doc/library/urllib.request.rst:761
msgid ""
"Return values and exceptions raised should be the same as those of :func:"
"`urlopen`."
msgstr ""

#: ../Doc/library/urllib.request.rst:767
msgid ""
"*nnn* should be a three-digit HTTP error code.  This method is also not "
"defined in :class:`BaseHandler`, but will be called, if it exists, on an "
"instance of a subclass, when an HTTP error with code *nnn* occurs."
msgstr ""

#: ../Doc/library/urllib.request.rst:771
msgid "Subclasses should override this method to handle specific HTTP errors."
msgstr ""

#: ../Doc/library/urllib.request.rst:773
msgid ""
"Arguments, return values and exceptions raised should be the same as for :"
"meth:`http_error_default`."
msgstr ""

#: ../Doc/library/urllib.request.rst:780
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"define it if they want to pre-process requests of the given protocol."
msgstr ""

#: ../Doc/library/urllib.request.rst:783
msgid ""
"This method, if defined, will be called by the parent :class:"
"`OpenerDirector`. *req* will be a :class:`Request` object. The return value "
"should be a :class:`Request` object."
msgstr ""

#: ../Doc/library/urllib.request.rst:791
msgid ""
"This method is *not* defined in :class:`BaseHandler`, but subclasses should "
"define it if they want to post-process responses of the given protocol."
msgstr ""

#: ../Doc/library/urllib.request.rst:794
msgid ""
"This method, if defined, will be called by the parent :class:"
"`OpenerDirector`. *req* will be a :class:`Request` object. *response* will "
"be an object implementing the same interface as the return value of :func:"
"`urlopen`.  The return value should implement the same interface as the "
"return value of :func:`urlopen`."
msgstr ""

#: ../Doc/library/urllib.request.rst:804
msgid "HTTPRedirectHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:808
msgid ""
"Some HTTP redirections require action from this module's client code.  If "
"this is the case, :exc:`~urllib.error.HTTPError` is raised.  See :rfc:`2616` "
"for details of the precise meanings of the various redirection codes."
msgstr ""

#: ../Doc/library/urllib.request.rst:812
msgid ""
"An :class:`HTTPError` exception raised as a security consideration if the "
"HTTPRedirectHandler is presented with a redirected URL which is not an HTTP, "
"HTTPS or FTP URL."
msgstr ""

#: ../Doc/library/urllib.request.rst:819
msgid ""
"Return a :class:`Request` or ``None`` in response to a redirect. This is "
"called by the default implementations of the :meth:`http_error_30\\*` "
"methods when a redirection is received from the server.  If a redirection "
"should take place, return a new :class:`Request` to allow :meth:"
"`http_error_30\\*` to perform the redirect to *newurl*.  Otherwise, raise :"
"exc:`~urllib.error.HTTPError` if no other handler should try to handle this "
"URL, or return ``None`` if you can't but another handler might."
msgstr ""

#: ../Doc/library/urllib.request.rst:829
msgid ""
"The default implementation of this method does not strictly follow :rfc:"
"`2616`, which says that 301 and 302 responses to ``POST`` requests must not "
"be automatically redirected without confirmation by the user.  In reality, "
"browsers do allow automatic redirection of these responses, changing the "
"POST to a ``GET``, and the default implementation reproduces this behavior."
msgstr ""

#: ../Doc/library/urllib.request.rst:838
msgid ""
"Redirect to the ``Location:`` or ``URI:`` URL.  This method is called by the "
"parent :class:`OpenerDirector` when getting an HTTP 'moved permanently' "
"response."
msgstr ""

#: ../Doc/library/urllib.request.rst:844
msgid ""
"The same as :meth:`http_error_301`, but called for the 'found' response."
msgstr ""

#: ../Doc/library/urllib.request.rst:849
msgid ""
"The same as :meth:`http_error_301`, but called for the 'see other' response."
msgstr ""

#: ../Doc/library/urllib.request.rst:854
msgid ""
"The same as :meth:`http_error_301`, but called for the 'temporary redirect' "
"response."
msgstr ""

#: ../Doc/library/urllib.request.rst:861
msgid "HTTPCookieProcessor Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:863
msgid ":class:`HTTPCookieProcessor` instances have one attribute:"
msgstr ""

#: ../Doc/library/urllib.request.rst:867
msgid "The :class:`http.cookiejar.CookieJar` in which cookies are stored."
msgstr ""

#: ../Doc/library/urllib.request.rst:873
msgid "ProxyHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:879
msgid ""
"The :class:`ProxyHandler` will have a method :meth:`protocol_open` for every "
"*protocol* which has a proxy in the *proxies* dictionary given in the "
"constructor.  The method will modify requests to go through the proxy, by "
"calling ``request.set_proxy()``, and call the next handler in the chain to "
"actually execute the protocol."
msgstr ""

#: ../Doc/library/urllib.request.rst:889
msgid "HTTPPasswordMgr Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:891
msgid ""
"These methods are available on :class:`HTTPPasswordMgr` and :class:"
"`HTTPPasswordMgrWithDefaultRealm` objects."
msgstr ""

#: ../Doc/library/urllib.request.rst:897
msgid ""
"*uri* can be either a single URI, or a sequence of URIs. *realm*, *user* and "
"*passwd* must be strings. This causes ``(user, passwd)`` to be used as "
"authentication tokens when authentication for *realm* and a super-URI of any "
"of the given URIs is given."
msgstr ""

#: ../Doc/library/urllib.request.rst:905
msgid ""
"Get user/password for given realm and URI, if any.  This method will return "
"``(None, None)`` if there is no matching user/password."
msgstr ""

#: ../Doc/library/urllib.request.rst:908
msgid ""
"For :class:`HTTPPasswordMgrWithDefaultRealm` objects, the realm ``None`` "
"will be searched if the given *realm* has no matching user/password."
msgstr ""

#: ../Doc/library/urllib.request.rst:915
msgid "HTTPPasswordMgrWithPriorAuth Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:917
msgid ""
"This password manager extends :class:`HTTPPasswordMgrWithDefaultRealm` to "
"support tracking URIs for which authentication credentials should always be "
"sent."
msgstr ""

#: ../Doc/library/urllib.request.rst:924
msgid ""
"*realm*, *uri*, *user*, *passwd* are as for :meth:`HTTPPasswordMgr."
"add_password`.  *is_authenticated* sets the initial value of the "
"``is_authenticated`` flag for the given URI or list of URIs. If "
"*is_authenticated* is specified as ``True``, *realm* is ignored."
msgstr ""

#: ../Doc/library/urllib.request.rst:932
msgid "Same as for :class:`HTTPPasswordMgrWithDefaultRealm` objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:938
msgid ""
"Update the ``is_authenticated`` flag for the given *uri* or list of URIs."
msgstr ""

#: ../Doc/library/urllib.request.rst:944
msgid ""
"Returns the current state of the ``is_authenticated`` flag for the given URI."
msgstr ""

#: ../Doc/library/urllib.request.rst:951
msgid "AbstractBasicAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:956
msgid ""
"Handle an authentication request by getting a user/password pair, and re-"
"trying the request.  *authreq* should be the name of the header where the "
"information about the realm is included in the request, *host* specifies the "
"URL and path to authenticate for, *req* should be the (failed) :class:"
"`Request` object, and *headers* should be the error headers."
msgstr ""

#: ../Doc/library/urllib.request.rst:962
msgid ""
"*host* is either an authority (e.g. ``\"python.org\"``) or a URL containing "
"an authority component (e.g. ``\"http://python.org/\"``). In either case, "
"the authority must not contain a userinfo component (so, ``\"python.org\"`` "
"and ``\"python.org:80\"`` are fine, ``\"joe:password@python.org\"`` is not)."
msgstr ""

#: ../Doc/library/urllib.request.rst:971
msgid "HTTPBasicAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:976 ../Doc/library/urllib.request.rst:987
#: ../Doc/library/urllib.request.rst:1012
#: ../Doc/library/urllib.request.rst:1023
msgid "Retry the request with authentication information, if available."
msgstr ""

#: ../Doc/library/urllib.request.rst:982
msgid "ProxyBasicAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:993
msgid "AbstractDigestAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:998
msgid ""
"*authreq* should be the name of the header where the information about the "
"realm is included in the request, *host* should be the host to authenticate "
"to, *req* should be the (failed) :class:`Request` object, and *headers* "
"should be the error headers."
msgstr ""

#: ../Doc/library/urllib.request.rst:1007
msgid "HTTPDigestAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1018
msgid "ProxyDigestAuthHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1029
msgid "HTTPHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1034
msgid ""
"Send an HTTP request, which can be either GET or POST, depending on ``req."
"has_data()``."
msgstr ""

#: ../Doc/library/urllib.request.rst:1041
msgid "HTTPSHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1046
msgid ""
"Send an HTTPS request, which can be either GET or POST, depending on ``req."
"has_data()``."
msgstr ""

#: ../Doc/library/urllib.request.rst:1053
msgid "FileHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1058
msgid ""
"Open the file locally, if there is no host name, or the host name is "
"``'localhost'``."
msgstr ""

#: ../Doc/library/urllib.request.rst:1061
msgid ""
"This method is applicable only for local hostnames.  When a remote hostname "
"is given, an :exc:`~urllib.error.URLError` is raised."
msgstr ""

#: ../Doc/library/urllib.request.rst:1069
msgid "DataHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1073
msgid ""
"Read a data URL. This kind of URL contains the content encoded in the URL "
"itself. The data URL syntax is specified in :rfc:`2397`. This implementation "
"ignores white spaces in base64 encoded data URLs so the URL may be wrapped "
"in whatever source file it comes from. But even though some browsers don't "
"mind about a missing padding at the end of a base64 encoded data URL, this "
"implementation will raise an :exc:`ValueError` in that case."
msgstr ""

#: ../Doc/library/urllib.request.rst:1084
msgid "FTPHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1089
msgid ""
"Open the FTP file indicated by *req*. The login is always done with empty "
"username and password."
msgstr ""

#: ../Doc/library/urllib.request.rst:1096
msgid "CacheFTPHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1098
msgid ""
":class:`CacheFTPHandler` objects are :class:`FTPHandler` objects with the "
"following additional methods:"
msgstr ""

#: ../Doc/library/urllib.request.rst:1104
msgid "Set timeout of connections to *t* seconds."
msgstr ""

#: ../Doc/library/urllib.request.rst:1109
msgid "Set maximum number of cached connections to *m*."
msgstr ""

#: ../Doc/library/urllib.request.rst:1115
msgid "UnknownHandler Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1120
msgid "Raise a :exc:`~urllib.error.URLError` exception."
msgstr ""

#: ../Doc/library/urllib.request.rst:1126
msgid "HTTPErrorProcessor Objects"
msgstr ""

#: ../Doc/library/urllib.request.rst:1132
msgid "For 200 error codes, the response object is returned immediately."
msgstr ""

#: ../Doc/library/urllib.request.rst:1134
msgid ""
"For non-200 error codes, this simply passes the job on to the :meth:"
"`protocol_error_code` handler methods, via :meth:`OpenerDirector.error`. "
"Eventually, :class:`HTTPDefaultErrorHandler` will raise an :exc:`~urllib."
"error.HTTPError` if no other handler handles the error."
msgstr ""

#: ../Doc/library/urllib.request.rst:1142
msgid "Process HTTPS error responses."
msgstr ""

#: ../Doc/library/urllib.request.rst:1144
msgid "The behavior is same as :meth:`http_response`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1150
msgid "Examples"
msgstr "Exemples"

#: ../Doc/library/urllib.request.rst:1152
msgid ""
"In addition to the examples below, more examples are given in :ref:`urllib-"
"howto`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1155
msgid ""
"This example gets the python.org main page and displays the first 300 bytes "
"of it. ::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1168
msgid ""
"Note that urlopen returns a bytes object.  This is because there is no way "
"for urlopen to automatically determine the encoding of the byte stream it "
"receives from the HTTP server. In general, a program will decode the "
"returned bytes object to string once it determines or guesses the "
"appropriate encoding."
msgstr ""

#: ../Doc/library/urllib.request.rst:1174
msgid ""
"The following W3C document, https://www.w3.org/International/O-charset\\ , "
"lists the various ways in which an (X)HTML or an XML document could have "
"specified its encoding information."
msgstr ""

#: ../Doc/library/urllib.request.rst:1178
msgid ""
"As the python.org website uses *utf-8* encoding as specified in its meta "
"tag, we will use the same for decoding the bytes object. ::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1187
msgid ""
"It is also possible to achieve the same result without using the :term:"
"`context manager` approach. ::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1196
msgid ""
"In the following example, we are sending a data-stream to the stdin of a CGI "
"and reading the data it returns to us. Note that this example will only work "
"when the Python installation supports SSL. ::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1208
msgid "The code for the sample CGI used in the above example is::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1215
msgid "Here is an example of doing a ``PUT`` request using :class:`Request`::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1225
msgid "Use of Basic HTTP Authentication::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1239
msgid ""
":func:`build_opener` provides many handlers by default, including a :class:"
"`ProxyHandler`.  By default, :class:`ProxyHandler` uses the environment "
"variables named ``<scheme>_proxy``, where ``<scheme>`` is the URL scheme "
"involved.  For example, the :envvar:`http_proxy` environment variable is "
"read to obtain the HTTP proxy's URL."
msgstr ""

#: ../Doc/library/urllib.request.rst:1245
msgid ""
"This example replaces the default :class:`ProxyHandler` with one that uses "
"programmatically-supplied proxy URLs, and adds proxy authorization support "
"with :class:`ProxyBasicAuthHandler`. ::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1257
msgid "Adding HTTP headers:"
msgstr ""

#: ../Doc/library/urllib.request.rst:1259
msgid "Use the *headers* argument to the :class:`Request` constructor, or::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1268
msgid ""
":class:`OpenerDirector` automatically adds a :mailheader:`User-Agent` header "
"to every :class:`Request`.  To change this::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1276
msgid ""
"Also, remember that a few standard headers (:mailheader:`Content-Length`, :"
"mailheader:`Content-Type` and :mailheader:`Host`) are added when the :class:"
"`Request` is passed to :func:`urlopen` (or :meth:`OpenerDirector.open`)."
msgstr ""

#: ../Doc/library/urllib.request.rst:1283
msgid ""
"Here is an example session that uses the ``GET`` method to retrieve a URL "
"containing parameters::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1294
msgid ""
"The following example uses the ``POST`` method instead. Note that params "
"output from urlencode is encoded to bytes before it is sent to urlopen as "
"data::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1305
msgid ""
"The following example uses an explicitly specified HTTP proxy, overriding "
"environment settings::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1315
msgid ""
"The following example uses no proxies at all, overriding environment "
"settings::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1325
msgid "Legacy interface"
msgstr ""

#: ../Doc/library/urllib.request.rst:1327
msgid ""
"The following functions and classes are ported from the Python 2 module "
"``urllib`` (as opposed to ``urllib2``).  They might become deprecated at "
"some point in the future."
msgstr ""

#: ../Doc/library/urllib.request.rst:1333
msgid ""
"Copy a network object denoted by a URL to a local file. If the URL points to "
"a local file, the object will not be copied unless filename is supplied. "
"Return a tuple ``(filename, headers)`` where *filename* is the local file "
"name under which the object can be found, and *headers* is whatever the :"
"meth:`info` method of the object returned by :func:`urlopen` returned (for a "
"remote object). Exceptions are the same as for :func:`urlopen`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1340
msgid ""
"The second argument, if present, specifies the file location to copy to (if "
"absent, the location will be a tempfile with a generated name). The third "
"argument, if present, is a hook function that will be called once on "
"establishment of the network connection and once after each block read "
"thereafter.  The hook will be passed three arguments; a count of blocks "
"transferred so far, a block size in bytes, and the total size of the file.  "
"The third argument may be ``-1`` on older FTP servers which do not return a "
"file size in response to a retrieval request."
msgstr ""

#: ../Doc/library/urllib.request.rst:1349
msgid "The following example illustrates the most common usage scenario::"
msgstr ""

#: ../Doc/library/urllib.request.rst:1356
msgid ""
"If the *url* uses the :file:`http:` scheme identifier, the optional *data* "
"argument may be given to specify a ``POST`` request (normally the request "
"type is ``GET``).  The *data* argument must be a bytes object in standard :"
"mimetype:`application/x-www-form-urlencoded` format; see the :func:`urllib."
"parse.urlencode` function."
msgstr ""

#: ../Doc/library/urllib.request.rst:1362
msgid ""
":func:`urlretrieve` will raise :exc:`ContentTooShortError` when it detects "
"that the amount of data available  was less than the expected amount (which "
"is the size reported by a  *Content-Length* header). This can occur, for "
"example, when the  download is interrupted."
msgstr ""

#: ../Doc/library/urllib.request.rst:1367
msgid ""
"The *Content-Length* is treated as a lower bound: if there's more data  to "
"read, urlretrieve reads more data, but if less data is available,  it raises "
"the exception."
msgstr ""

#: ../Doc/library/urllib.request.rst:1371
msgid ""
"You can still retrieve the downloaded data in this case, it is stored  in "
"the :attr:`content` attribute of the exception instance."
msgstr ""

#: ../Doc/library/urllib.request.rst:1374
msgid ""
"If no *Content-Length* header was supplied, urlretrieve can not check the "
"size of the data it has downloaded, and just returns it.  In this case you "
"just have to assume that the download was successful."
msgstr ""

#: ../Doc/library/urllib.request.rst:1380
msgid ""
"Cleans up temporary files that may have been left behind by previous calls "
"to :func:`urlretrieve`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1387
msgid ""
"Base class for opening and reading URLs.  Unless you need to support opening "
"objects using schemes other than :file:`http:`, :file:`ftp:`, or :file:`file:"
"`, you probably want to use :class:`FancyURLopener`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1391
msgid ""
"By default, the :class:`URLopener` class sends a :mailheader:`User-Agent` "
"header of ``urllib/VVV``, where *VVV* is the :mod:`urllib` version number. "
"Applications can define their own :mailheader:`User-Agent` header by "
"subclassing :class:`URLopener` or :class:`FancyURLopener` and setting the "
"class attribute :attr:`version` to an appropriate string value in the "
"subclass definition."
msgstr ""

#: ../Doc/library/urllib.request.rst:1397
msgid ""
"The optional *proxies* parameter should be a dictionary mapping scheme names "
"to proxy URLs, where an empty dictionary turns proxies off completely.  Its "
"default value is ``None``, in which case environmental proxy settings will "
"be used if present, as discussed in the definition of :func:`urlopen`, above."
msgstr ""

#: ../Doc/library/urllib.request.rst:1402
msgid ""
"Additional keyword parameters, collected in *x509*, may be used for "
"authentication of the client when using the :file:`https:` scheme.  The "
"keywords *key_file* and *cert_file* are supported to provide an  SSL key and "
"certificate; both are needed to support client authentication."
msgstr ""

#: ../Doc/library/urllib.request.rst:1407
msgid ""
":class:`URLopener` objects will raise an :exc:`OSError` exception if the "
"server returns an error code."
msgstr ""

#: ../Doc/library/urllib.request.rst:1412
msgid ""
"Open *fullurl* using the appropriate protocol.  This method sets up cache "
"and proxy information, then calls the appropriate open method with its input "
"arguments.  If the scheme is not recognized, :meth:`open_unknown` is called. "
"The *data* argument has the same meaning as the *data* argument of :func:"
"`urlopen`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1421
msgid "Overridable interface to open unknown URL types."
msgstr ""

#: ../Doc/library/urllib.request.rst:1426
msgid ""
"Retrieves the contents of *url* and places it in *filename*.  The return "
"value is a tuple consisting of a local filename and either an :class:`email."
"message.Message` object containing the response headers (for remote URLs) or "
"``None`` (for local URLs).  The caller must then open and read the contents "
"of *filename*.  If *filename* is not given and the URL refers to a local "
"file, the input filename is returned.  If the URL is non-local and "
"*filename* is not given, the filename is the output of :func:`tempfile."
"mktemp` with a suffix that matches the suffix of the last path component of "
"the input URL.  If *reporthook* is given, it must be a function accepting "
"three numeric parameters: A chunk number, the maximum size chunks are read "
"in and the total size of the download (-1 if unknown).  It will be called "
"once at the start and after each chunk of data is read from the network.  "
"*reporthook* is ignored for local URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:1439
msgid ""
"If the *url* uses the :file:`http:` scheme identifier, the optional *data* "
"argument may be given to specify a ``POST`` request (normally the request "
"type is ``GET``).  The *data* argument must in standard :mimetype:"
"`application/x-www-form-urlencoded` format; see the :func:`urllib.parse."
"urlencode` function."
msgstr ""

#: ../Doc/library/urllib.request.rst:1448
msgid ""
"Variable that specifies the user agent of the opener object.  To get :mod:"
"`urllib` to tell servers that it is a particular user agent, set this in a "
"subclass as a class variable or in the constructor before calling the base "
"constructor."
msgstr ""

#: ../Doc/library/urllib.request.rst:1458
msgid ""
":class:`FancyURLopener` subclasses :class:`URLopener` providing default "
"handling for the following HTTP response codes: 301, 302, 303, 307 and 401.  "
"For the 30x response codes listed above, the :mailheader:`Location` header "
"is used to fetch the actual URL.  For 401 response codes (authentication "
"required), basic HTTP authentication is performed.  For the 30x response "
"codes, recursion is bounded by the value of the *maxtries* attribute, which "
"defaults to 10."
msgstr ""

#: ../Doc/library/urllib.request.rst:1465
msgid ""
"For all other response codes, the method :meth:`http_error_default` is "
"called which you can override in subclasses to handle the error "
"appropriately."
msgstr ""

#: ../Doc/library/urllib.request.rst:1470
msgid ""
"According to the letter of :rfc:`2616`, 301 and 302 responses to POST "
"requests must not be automatically redirected without confirmation by the "
"user.  In reality, browsers do allow automatic redirection of these "
"responses, changing the POST to a GET, and :mod:`urllib` reproduces this "
"behaviour."
msgstr ""

#: ../Doc/library/urllib.request.rst:1475
msgid ""
"The parameters to the constructor are the same as those for :class:"
"`URLopener`."
msgstr ""

#: ../Doc/library/urllib.request.rst:1479
msgid ""
"When performing basic authentication, a :class:`FancyURLopener` instance "
"calls its :meth:`prompt_user_passwd` method.  The default implementation "
"asks the users for the required information on the controlling terminal.  A "
"subclass may override this method to support more appropriate behavior if "
"needed."
msgstr ""

#: ../Doc/library/urllib.request.rst:1484
msgid ""
"The :class:`FancyURLopener` class offers one additional method that should "
"be overloaded to provide the appropriate behavior:"
msgstr ""

#: ../Doc/library/urllib.request.rst:1489
msgid ""
"Return information needed to authenticate the user at the given host in the "
"specified security realm.  The return value should be a tuple, ``(user, "
"password)``, which can be used for basic authentication."
msgstr ""

#: ../Doc/library/urllib.request.rst:1493
msgid ""
"The implementation prompts for this information on the terminal; an "
"application should override this method to use an appropriate interaction "
"model in the local environment."
msgstr ""

#: ../Doc/library/urllib.request.rst:1499
msgid ":mod:`urllib.request` Restrictions"
msgstr ""

#: ../Doc/library/urllib.request.rst:1505
msgid ""
"Currently, only the following protocols are supported: HTTP (versions 0.9 "
"and 1.0), FTP, local files, and data URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:1508
msgid "Added support for data URLs."
msgstr ""

#: ../Doc/library/urllib.request.rst:1510
msgid ""
"The caching feature of :func:`urlretrieve` has been disabled until someone "
"finds the time to hack proper processing of Expiration time headers."
msgstr ""

#: ../Doc/library/urllib.request.rst:1513
msgid ""
"There should be a function to query whether a particular URL is in the cache."
msgstr ""

#: ../Doc/library/urllib.request.rst:1515
msgid ""
"For backward compatibility, if a URL appears to point to a local file but "
"the file can't be opened, the URL is re-interpreted using the FTP protocol.  "
"This can sometimes cause confusing error messages."
msgstr ""

#: ../Doc/library/urllib.request.rst:1519
msgid ""
"The :func:`urlopen` and :func:`urlretrieve` functions can cause arbitrarily "
"long delays while waiting for a network connection to be set up.  This means "
"that it is difficult to build an interactive Web client using these "
"functions without using threads."
msgstr ""

#: ../Doc/library/urllib.request.rst:1528
msgid ""
"The data returned by :func:`urlopen` or :func:`urlretrieve` is the raw data "
"returned by the server.  This may be binary data (such as an image), plain "
"text or (for example) HTML.  The HTTP protocol provides type information in "
"the reply header, which can be inspected by looking at the :mailheader:"
"`Content-Type` header.  If the returned data is HTML, you can use the "
"module :mod:`html.parser` to parse it."
msgstr ""

#: ../Doc/library/urllib.request.rst:1537
msgid ""
"The code handling the FTP protocol cannot differentiate between a file and a "
"directory.  This can lead to unexpected behavior when attempting to read a "
"URL that points to a file that is not accessible.  If the URL ends in a ``/"
"``, it is assumed to refer to a directory and will be handled accordingly.  "
"But if an attempt to read a file leads to a 550 error (meaning the URL "
"cannot be found or is not accessible, often for permission reasons), then "
"the path is treated as a directory in order to handle the case when a "
"directory is specified by a URL but the trailing ``/`` has been left off.  "
"This can cause misleading results when you try to fetch a file whose read "
"permissions make it inaccessible; the FTP code will try to read it, fail "
"with a 550 error, and then perform a directory listing for the unreadable "
"file. If fine-grained control is needed, consider using the :mod:`ftplib` "
"module, subclassing :class:`FancyURLopener`, or changing *_urlopener* to "
"meet your needs."
msgstr ""

#: ../Doc/library/urllib.request.rst:1554
msgid ":mod:`urllib.response` --- Response classes used by urllib"
msgstr ""

#: ../Doc/library/urllib.request.rst:1559
msgid ""
"The :mod:`urllib.response` module defines functions and classes which define "
"a minimal file like interface, including ``read()`` and ``readline()``. The "
"typical response object is an addinfourl instance, which defines an "
"``info()`` method and that returns headers and a ``geturl()`` method that "
"returns the url. Functions defined by this module are used internally by "
"the :mod:`urllib.request` module."
msgstr ""
