pg-cache-storage
PostgreSQL cache storage backend for botasaurus.
Installation
pip install pg-cache-storage
Usage
With decorators like @task, @request, @browser
from pg_cache_storage import PostgresCacheStorage
from botasaurus.task import task
from datetime import timedelta
# Create storage instance
pg_storage = PostgresCacheStorage(
host="localhost",
port=5432,
username="postgres",
password="postgres",
db_name="cache"
)
@task(cache=True, expires_in=timedelta(days=1), cache_storage=pg_storage)
def my_scraper(data):
# scraping logic
return result
With @cache decorator
from pg_cache_storage import PostgresCacheStorage
from botasaurus.decorator_helpers import cache
from datetime import timedelta
# Create storage instance
pg_storage = PostgresCacheStorage(
host="localhost",
port=5432,
username="postgres",
password="postgres",
db_name="cache"
)
# Use the decorator
@cache(expires_in=timedelta(days=1), cache_storage=pg_storage)
def my_function(data):
# time-consuming operation
return result
API
PostgresCacheStorage
PostgresCacheStorage(
host: str = 'localhost',
port: int = 5432,
username: str = 'postgres',
password: str = 'postgres',
db_name: str = 'cache',
table_name: str = 'botasaurus_cache'
)
Methods
get(func_name, key_data, expires_in=None)- Get cached value. Returns{"data": value}orNoneput(func_name, key_data, data)- Store value in cachedelete(func_name, key_data)- Delete cached value
License
MIT
Metadata
Release files for pg-cache-storage 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pg_cache_storage-1.0.5.tar.gz | 4.2 kB | Details |
Release files / pg_cache_storage-1.0.5.tar.gz
| Download URL | pg_cache_storage-1.0.5.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f602be8d68f335bc02c7e4fdaa20f9d6720c60151b7d801fbc4f96d04cd6e25e
|
|
BLAKE2b-256 checksum How to use checksums |
882b241310110c2bcaece9b2176e3dd8cc508a5e458f64f15a0d46c14c268ea6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|