Skip to main content

PostgreSQL cache storage for botasaurus.

Project description

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} or None
  • put(func_name, key_data, data) - Store value in cache
  • delete(func_name, key_data) - Delete cached value

License

MIT

Project details


Download files

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

Source Distribution

pg_cache_storage-1.0.4.tar.gz (4.1 kB view details)

Uploaded Source

File details

Details for the file pg_cache_storage-1.0.4.tar.gz.

File metadata

  • Download URL: pg_cache_storage-1.0.4.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for pg_cache_storage-1.0.4.tar.gz
Algorithm Hash digest
SHA256 ff5067b647766b7105153c7a5d5e4190bf432bc03878f0a4823530df33814a05
MD5 98d7f858013fc2e4f7b25991a9da3da5
BLAKE2b-256 0bddd330932402608103799263bdc95439fbe3930d3541a3483ec6f81b126378

See more details on using hashes here.

Supported by

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