|
Server IP : 128.199.20.84 / Your IP : 172.69.17.110 Web Server : Apache/2.4.41 (Ubuntu) System : Linux competent-maruti 5.4.0-128-generic #144-Ubuntu SMP Tue Sep 20 11:00:04 UTC 2022 x86_64 User : www-data ( 33) PHP Version : 8.0.20 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF Directory (0755) : /usr/share/doc/python3-hyperlink/../python3-httplib2/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
Introduction
============
httplib2 is a comprehensive HTTP client library, httplib2.py supports many
features left out of other HTTP libraries.
### HTTP and HTTPS
HTTPS support is only available if the socket module was
compiled with SSL support.
### Keep-Alive
Supports HTTP 1.1 Keep-Alive, keeping the socket open and
performing multiple requests over the same connection if
possible.
### Authentication
The following three types of HTTP Authentication are
supported. These can be used over both HTTP and HTTPS.
* Digest
* Basic
* WSSE
### Caching
The module can optionally operate with a private cache that
understands the Cache-Control: header and uses both the ETag
and Last-Modified cache validators.
### All Methods
The module can handle any HTTP request method, not just GET
and POST.
### Redirects
Automatically follows 3XX redirects on GETs.
### Compression
Handles both 'deflate' and 'gzip' types of compression.
### Lost update support
Automatically adds back ETags into PUT requests to resources
we have already cached. This implements Section 3.2 of
Detecting the Lost Update Problem Using Unreserved Checkout.
### Unit Tested
A large and growing set of unit tests.
Installation
============
$ pip install httplib2
Usage
=====
A simple retrieval:
```python
import httplib2
h = httplib2.Http(".cache")
(resp_headers, content) = h.request("http://example.org/", "GET")
```
The 'content' is the content retrieved from the URL. The content
is already decompressed or unzipped if necessary.
To PUT some content to a server that uses SSL and Basic authentication:
```python
import httplib2
h = httplib2.Http(".cache")
h.add_credentials('name', 'password')
(resp, content) = h.request("https://example.org/chapter/2",
"PUT", body="This is text",
headers={'content-type':'text/plain'} )
```
Use the Cache-Control: header to control how the caching operates.
```python
import httplib2
h = httplib2.Http(".cache")
(resp, content) = h.request("http://bitworking.org/", "GET")
...
(resp, content) = h.request("http://bitworking.org/", "GET",
headers={'cache-control':'no-cache'})
```
The first request will be cached and since this is a request
to bitworking.org it will be set to be cached for two hours,
because that is how I have my server configured. Any subsequent
GET to that URI will return the value from the on-disk cache
and no request will be made to the server. You can use the
Cache-Control: header to change the caches behavior and in
this example the second request adds the Cache-Control:
header with a value of 'no-cache' which tells the library
that the cached copy must not be used when handling this request.
More example usage can be found at:
* https://github.com/httplib2/httplib2/wiki/Examples
* https://github.com/httplib2/httplib2/wiki/Examples-Python3