GridFS¶
GridFS is a specification for storing large files
(>16 MB) in MongoDB. See mongodb
for more general info on MongoDB.
API Reference¶
GridFS cache backend. |
|
A dictionary-like interface for a GridFS database |
- class requests_cache.backends.gridfs.GridFSCache(db_name, **kwargs)[source]¶
Bases:
requests_cache.backends.base.BaseCache
GridFS cache backend.
Example
>>> session = CachedSession('http_cache', backend='gridfs')
- Parameters
db_name (
str
) – Database nameconnection –
pymongo.MongoClient
object to reuse instead of creating a new onekwargs – Additional keyword arguments for
pymongo.MongoClient
- bulk_delete(keys)¶
Remove multiple responses and their associated redirects from the cache
- clear()¶
Delete all items from the cache
- create_key(request=None, **kwargs)¶
Create a normalized cache key from a request object
- Parameters
request (
Union
[PreparedRequest
,CachedRequest
,None
]) –- Return type
- delete(key)¶
Delete a response or redirect from the cache, as well any associated redirect history
- Parameters
key (
str
) –
- delete_url(url, method='GET', **kwargs)¶
Delete a cached response for the specified request
- delete_urls(urls, method='GET', **kwargs)¶
Delete all cached responses for the specified requests
- get_response(key, default=None)¶
Retrieve a response from the cache, if it exists
- Parameters
key (
str
) – Cache key for the responsedefault – Value to return if key is not in the cache
- Return type
- has_url(url, method='GET', **kwargs)¶
Returns
True
if the specified request is cached
- keys(check_expiry=False)¶
Get all cache keys for redirects and valid responses combined
- remove_expired_responses(expire_after=None)¶
Remove expired and invalid responses from the cache, optionally with revalidation
- response_count(check_expiry=False)¶
Get the number of responses in the cache, excluding invalid (unusable) responses. Can also optionally exclude expired responses.
- Return type
- save_response(response, cache_key=None, expires=None)¶
Save a response to the cache
- values(check_expiry=False)¶
Get all valid response objects from the cache
- Return type
- class requests_cache.backends.gridfs.GridFSPickleDict(db_name, collection_name=None, connection=None, **kwargs)[source]¶
Bases:
requests_cache.backends.base.BaseStorage
A dictionary-like interface for a GridFS database
- Parameters
db_name – Database name
collection_name – Ignored; GridFS internally uses collections ‘fs.files’ and ‘fs.chunks’
connection –
pymongo.MongoClient
object to reuse instead of creating a new onekwargs – Additional keyword arguments for
pymongo.MongoClient
- bulk_delete(keys)¶
Delete multiple keys from the cache, without raising errors for missing keys. This is a naive implementation that subclasses should override with a more efficient backend-specific implementation, if possible.
- get(k[, d]) D[k] if k in D, else d. d defaults to None. ¶
- items() a set-like object providing a view on D’s items ¶
- keys() a set-like object providing a view on D’s keys ¶
- pop(k[, d]) v, remove specified key and return the corresponding value. ¶
If key is not found, d is returned if given, otherwise KeyError is raised.
- popitem() (k, v), remove and return some (key, value) pair ¶
as a 2-tuple; but raise KeyError if D is empty.
- setdefault(k[, d]) D.get(k,d), also set D[k]=d if k not in D ¶
- update([E, ]**F) None. Update D from mapping/iterable E and F. ¶
If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v
- values() an object providing a view on D’s values ¶