mirror of
https://github.com/kennethreitz/requests.git
synced 2026-06-05 22:50:18 +00:00
Updated proxies documentation
This commit is contained in:
+28
-20
@@ -590,7 +590,7 @@ If you need to use a proxy, you can configure individual requests with the
|
||||
requests.get('http://example.org', proxies=proxies)
|
||||
|
||||
Alternatively you can configure it once for an entire
|
||||
:class:`Session <requests.Session>`, either manually::
|
||||
:class:`Session <requests.Session>`::
|
||||
|
||||
import requests
|
||||
|
||||
@@ -603,19 +603,12 @@ Alternatively you can configure it once for an entire
|
||||
|
||||
session.get('http://example.org')
|
||||
|
||||
or with the helper method :func:`set_http_proxy <requests.Session.set_http_proxy>`::
|
||||
|
||||
import requests
|
||||
|
||||
session = request.Session()
|
||||
session.set_http_proxy(http_url='http://10.10.1.10:3128', https_url='http://10.10.1.10:1080')
|
||||
|
||||
session.get('http://example.org')
|
||||
|
||||
You can also configure proxies by setting the environment variables
|
||||
``HTTP_PROXY``, ``HTTPS_PROXY``, ``NO_PROXY`` and ``CURL_CA_BUNDLE``.
|
||||
|
||||
::
|
||||
When the proxies configuration is not overridden in python as shown above,
|
||||
by default Requests relies on the proxy configuration defined by standard
|
||||
environment variables ``http_proxy``, ``https_proxy``, ``no_proxy`` and
|
||||
``curl_ca_bundle``. Uppercase variants of these variables are also supported.
|
||||
You can therefore set them to configure Requests (only set the ones relevant
|
||||
to your needs)::
|
||||
|
||||
$ export HTTP_PROXY="http://10.10.1.10:3128"
|
||||
$ export HTTPS_PROXY="http://10.10.1.10:1080"
|
||||
@@ -624,9 +617,17 @@ You can also configure proxies by setting the environment variables
|
||||
>>> import requests
|
||||
>>> requests.get('http://example.org')
|
||||
|
||||
To use HTTP Basic Auth with your proxy, use the `http://user:password@host/` syntax::
|
||||
To use HTTP Basic Auth with your proxy, use the `http://user:password@host/`
|
||||
syntax in any of the above configuration entries::
|
||||
|
||||
proxies = {'http': 'http://user:pass@10.10.1.10:3128/'}
|
||||
$ export HTTPS_PROXY="http://user:pass@10.10.1.10:1080"
|
||||
|
||||
$ python
|
||||
>>> proxies = {'http': 'http://user:pass@10.10.1.10:3128/'}
|
||||
|
||||
.. warning:: Storing sensitive username and password information in an
|
||||
environment variable or a version-controled file is a security risk and is
|
||||
highly discouraged.
|
||||
|
||||
To give a proxy for a specific scheme and host, use the
|
||||
`scheme://hostname` form for the key. This will match for
|
||||
@@ -638,15 +639,22 @@ any request to the given scheme and exact hostname.
|
||||
|
||||
Note that proxy URLs must include the scheme.
|
||||
|
||||
Finally, note that using a proxy for https connections typically requires your local machine to trust the
|
||||
proxy's root certificate. By default the list of certificates trusted by Requests can be found with::
|
||||
Finally, note that using a proxy for https connections typically requires your
|
||||
local machine to trust the proxy's root certificate. By default the list of
|
||||
certificates trusted by Requests can be found with::
|
||||
|
||||
from requests.utils import DEFAULT_CA_BUNDLE_PATH
|
||||
print(DEFAULT_CA_BUNDLE_PATH)
|
||||
|
||||
You override this default certificate bundle by setting the standard ``CURL_CA_BUNDLE`` environment variable
|
||||
to another file path.
|
||||
You override this default certificate bundle by setting the standard
|
||||
``curl_ca_bundle`` environment variable to another file path::
|
||||
|
||||
$ export curl_ca_bundle="/usr/local/myproxy_info/cacert.pem"
|
||||
$ export https_proxy="http://10.10.1.10:1080"
|
||||
|
||||
$ python
|
||||
>>> import requests
|
||||
>>> requests.get('https://example.org')
|
||||
|
||||
SOCKS
|
||||
^^^^^
|
||||
|
||||
Reference in New Issue
Block a user