Provides enhanced HTTPS support for httplib and urllib2 using PyOpenSSL
Project description
This is a HTTPS client implementation for httplib and urllib2 based on PyOpenSSL. PyOpenSSL provides a more fully featured SSL implementation over the default provided with Python and importantly enables full verification of the SSL peer.
Releases
0.4.0
Made dual compatible with Python 2 / 3.
0.3.3
Fix to add in AnotherName for subjectAltNames field - added for support for CACert issued certs (thanks to Gu1).
Fix to HTTP Basic Auth option for ndg.httpsclient.utils.main
Fix to ServerSSLCertVerification so that it can pass a function-based callback instead of using __call__. In newer versions of OpenSSL (>= 0.14) the latter failed because of a request for __name__ attribute.
0.3.2
Fix to SubjectAltNames support check - should only be enabled if pyasn1 is installed.
Fix to open_url: HTTP Request object was being created inside if headers is None block - now corrected to create regardless.
Added http basic auth support to script. (Thanks to Willem van Engen)
0.3.1
extended utils functions to support keyword for passing additional urllib2 handlers.
0.3.0
Added ndg.httpsclient.utils.fetch_stream_from_url function and added parameter for data to post in open_url and fetch_* methods.
fix to ndg.httpsclient.utils module _should_use_proxy and open_url functions
0.2.0
added support for SSL verification with subjectAltNames using pyasn1
fixed minor bug - SSL cert DN prefix matching
0.1.0
Initial release
Prerequisites
This has been developed and tested for Python 2.6 and 2.7 with pyOpenSSL 0.13 and 0.14. Version 0.4.0 tested with pyOpenSSL 0.15.1 and Python 2.7 and 3.4. Note that proxy support is only available from Python 2.6.2 onwards. pyasn1 is required for correct SSL verification with subjectAltNames.
Installation
Installation can be performed using easy_install or pip.
Running ndg_httpclient
A simple script for fetching data using HTTP or HTTPS GET from a specified URL.
Parameter:
- url
The URL of the resource to be fetched
Options:
- -h, --help
Show help message and exit.
- -c FILE, --certificate=FILE
Certificate file - defaults to $HOME/credentials.pem
- -k FILE, --private-key=FILE
Private key file - defaults to the certificate file
- -t DIR, --ca-certificate-dir=DIR
Trusted CA certificate file directory.
- -d, --debug
Print debug information - this may be useful in solving problems with HTTP or HTTPS access to a server.
- -p FILE, --post-data-file=FILE
POST data file
- -f FILE, --fetch=FILE
Output file
- -n, --no-verify-peer
Skip verification of peer certificate.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ndg_httpsclient-0.4.0.tar.gz
.
File metadata
- Download URL: ndg_httpsclient-0.4.0.tar.gz
- Upload date:
- Size: 24.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8c155fdebd9c4bcb0810b4ed01ae1987554b1ee034dd7532d7b8fdae38a6274 |
|
MD5 | 81972c0267d5a47d678211ac854838f5 |
|
BLAKE2b-256 | dfa8e7d70a8dd58c206c57b754fe15e5eb5f302f63fb1bfde5f26a0f5b019557 |