anyhttp provides a generic layer to use existing http clients.
The primary purpose is to be used by packages which need http, do not need or want to depend on one of the existing clients, and/or want to re-used by applications which already have a dependency on a http clients.
anyhttp supports:
requests
httplib2
urllib3
pycurl
fido
httq
async_http
webob
urlfetch
simplefetch
httputils
tornado
ihttp
basic_http
unirest
httpstream
http1
reqres
tinydav
ultralite
urlgrabber
dogbutler
pylhttp
hyper
asynchttp
geventhttpclient
streaming_httplib2
bolacha
drest
httxlib
dugong
aiohttp
yieldfrom.http.client
Normal use
Normal usage of anyhttp involves simply using either:
anyhttp.get_text(url) anyhttp.get_binary(url)
anyhttp will look for a capable http clients in sys.modules. The sequence will look like:
app:
import httplib2 # must be first
import your_package
your_package:
import anyhttp
anyhttp:
http = Wrapper(httplib2)
Testing
anyhttp includes tests that verify the supported clients can perform certain http operations, and that test suite allows basic HTTP conformance testing of HTTP features.
It is easy to add a new client to the test suite. The list of supported clients is in the main anyhttp module, and the test suite automatically applies the tests to new clients added.
The automatic support of additional clients is achieved using python package testscenarios with an unmerged patch. This can be installed from https://code.launchpad.net/~jayvdb/testscenarios/0.4-with_scenarios
Metadata
Release files for anyhttp 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| anyhttp-0.1.tar.gz | 25.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| anyhttp-0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.2 kB
Release files / anyhttp-0.1.tar.gz
| Download URL | anyhttp-0.1.tar.gz |
|---|---|
| Size | 25.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
108d0a4c1db93fccb6f02cacba9afe029497339847d353f76f3880dba2b09d7f
|
|
BLAKE2b-256 checksum How to use checksums |
4728ee70864c835676a42ec5e11e50635524012dbe4ca3203e513409362f0777
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.2
|
Release files / anyhttp-0.1-py3-none-any.whl
| Download URL | anyhttp-0.1-py3-none-any.whl |
|---|---|
| Size | 7.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3c0ccd0217995e0304c948d7f0c1eba38889b7b097069ae8d2e59a88bddf0ed5
|
|
BLAKE2b-256 checksum How to use checksums |
3c6e0fed76739388e8eb5e678de510fd80710fdb5e1ee35ab85e7be955b08862
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.2
|