3b405f2a42
- Implemented DomainManager in app/utils.py for TLD rotation and caching. - Created ZoneTelechargementDownloader in app/downloaders/series_sites/zonetelechargement.py. - Integrated Zone-Telechargement into series search and provider list. - Updated .gitignore to exclude domain_cache.json.
27 lines
679 B
Python
27 lines
679 B
Python
"""Series streaming sites (catalogs) downloaders"""
|
|
from .base import BaseSeriesSite
|
|
# Import all series site downloaders
|
|
from .fs7 import FS7Downloader
|
|
from .zonetelechargement import ZoneTelechargementDownloader
|
|
|
|
__all__ = [
|
|
"BaseSeriesSite",
|
|
"FS7Downloader",
|
|
"ZoneTelechargementDownloader",
|
|
]
|
|
|
|
|
|
def get_series_site(url: str) -> BaseSeriesSite:
|
|
"""Factory function to get the appropriate series site for a URL"""
|
|
sites = [
|
|
FS7Downloader(),
|
|
ZoneTelechargementDownloader(),
|
|
]
|
|
|
|
for site in sites:
|
|
if site.can_handle(url):
|
|
return site
|
|
|
|
# Return None if no match (should not happen in normal flow)
|
|
return None
|