You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
from __future__ import absolute_import
|
|
|
|
import datetime
|
|
|
|
from hashlib import sha1
|
|
|
|
|
|
|
|
from dogpile.cache import make_region
|
|
|
|
|
|
|
|
#: Expiration time for show caching
|
|
|
|
SHOW_EXPIRATION_TIME = datetime.timedelta(weeks=3).total_seconds()
|
|
|
|
|
|
|
|
#: Expiration time for episode caching
|
|
|
|
EPISODE_EXPIRATION_TIME = datetime.timedelta(days=3).total_seconds()
|
|
|
|
|
|
|
|
#: Expiration time for scraper searches
|
|
|
|
REFINER_EXPIRATION_TIME = datetime.timedelta(weeks=1).total_seconds()
|
|
|
|
|
|
|
|
|
|
|
|
def sha1_key_mangler(key):
|
|
|
|
"""Return sha1 hex for cache keys"""
|
|
|
|
if isinstance(key, str):
|
|
|
|
key = key.encode("utf-8")
|
|
|
|
|
|
|
|
return sha1(key).hexdigest()
|
|
|
|
|
|
|
|
|
|
|
|
# Use key mangler to limit cache key names to 40 characters
|
|
|
|
region = make_region(key_mangler=sha1_key_mangler)
|