Skip to main content

Persistent cache for requests library

Project description

requests-cache

Requests-cache is a transparent persistent cache for requests (version >= 1.1.0) library.

https://travis-ci.org/reclosedev/requests-cache.svg?branch=master Latest Version

Usage example

Just write:

import requests
import requests_cache

requests_cache.install_cache('demo_cache')

And all responses with headers and cookies will be transparently cached to demo_cache.sqlite database. For example, following code will take only 1-2 seconds instead 10, and will run instantly on next launch:

for i in range(10):
    requests.get('http://httpbin.org/delay/1')

It can be useful when you are creating some simple data scraper with constantly changing parsing logic or data format, and don’t want to redownload pages or write complex error handling and persistence.

Note

requests-cache ignores all cache headers, it just caches the data for the time you specify.

If you need library which knows how to use HTTP headers and status codes, take a look at httpcache and CacheControl.

History

0.4.9 (2015-01-17)

  • expire_after now also accepts timedelta, thanks to @femtotrader

  • Added Ability to include headers to cache key (include_get_headers option)

  • Added string representation for CachedSession

0.4.8 (2014-12-13)

  • Fix bug in reading cached streaming response

0.4.7 (2014-12-06)

  • Fix compatibility with Requests > 2.4.1 (json arg, response history)

0.4.6 (2014-10-13)

  • Monkey patch now uses class instead lambda (compatibility with rauth)

  • Normalize (sort) parameters passed as builtin dict

0.4.5 (2014-08-22)

  • Requests==2.3.0 compatibility, thanks to @gwillem

0.4.4 (2013-10-31)

  • Check for backend availability in install_cache(), not at the first request

  • Default storage fallbacks to memory if sqlite is not available

0.4.3 (2013-09-12)

  • Fix response.from_cache not set in hooks

0.4.2 (2013-08-25)

  • Fix UnpickleableError for gzip responses

0.4.1 (2013-08-19)

  • requests_cache.enabled() context manager

  • Compatibility with Requests 1.2.3 cookies handling

0.4.0 (2013-04-25)

  • Redis backend. Thanks to @michaelbeaumont

  • Fix for changes in Requests 1.2.0 hooks dispatching

0.3.0 (2013-02-24)

  • Support for Requests 1.x.x

  • CachedSession

  • Many backward incompatible changes

0.2.1 (2013-01-13)

  • Fix broken PyPi package

0.2.0 (2013-01-12)

  • Last backward compatible version for Requests 0.14.2

0.1.3 (2012-05-04)

  • Thread safety for default sqlite backend

  • Take into account the POST parameters when cache is configured with ‘POST’ in allowable_methods

0.1.2 (2012-05-02)

  • Reduce number of sqlite database write operations

  • fast_save option for sqlite backend

0.1.1 (2012-04-11)

  • Fix: restore responses from response.history

  • Internal refactoring (MemoryCache -> BaseCache, reduce_response and restore_response moved to BaseCache)

  • connection option for MongoCache

0.1.0 (2012-04-10)

  • initial PyPI release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

requests-cache-0.4.9.zip (42.2 kB view details)

Uploaded Source

requests-cache-0.4.9.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

requests-cache-0.4.9.win32.exe (219.7 kB view details)

Uploaded Source

File details

Details for the file requests-cache-0.4.9.zip.

File metadata

  • Download URL: requests-cache-0.4.9.zip
  • Upload date:
  • Size: 42.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for requests-cache-0.4.9.zip
Algorithm Hash digest
SHA256 8a9606ec1c745cd8e4374f4334d8c87dd9d38cfcc1b64af9d4321b525767c428
MD5 1c37b88881480c013c858f5d7aa2799c
BLAKE2b-256 375428fbdc6a935bdea97c84e5371930c9d6099e5329e6d4bffbef1bcfa9a890

See more details on using hashes here.

File details

Details for the file requests-cache-0.4.9.tar.gz.

File metadata

File hashes

Hashes for requests-cache-0.4.9.tar.gz
Algorithm Hash digest
SHA256 9261ebd0ff51cb21cc0e7c81a6e758afa77a7944cf8ee4646226febc1c849f5f
MD5 808cddbf7aaf46dcceb56bcfc5cdd070
BLAKE2b-256 0c5a24c1ad79a55a42c651237ed0ba6ebc48a960e2f39a05a4692d5ad6c80012

See more details on using hashes here.

File details

Details for the file requests-cache-0.4.9.win32.exe.

File metadata

File hashes

Hashes for requests-cache-0.4.9.win32.exe
Algorithm Hash digest
SHA256 bfe01d096c437d3cec349fc11f5dcc2017e62ab368dd090ed493eeac635fcbf3
MD5 5ff91862c9458633975c89b38017822c
BLAKE2b-256 179b1e376fc0cf2820cf86981fbc35db151806c7b6fe9a01b4d94b49cf09fdf3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page