all repos — rastro @ 6738696441c3bf8d4382193143952f0e7cdac6c5

BitTorrent tracker!

app/collectors/jokepool710.py (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
"""jokepool710/Torrent-_Trackers collector.

Independent daily public-tracker list (MIT, (c) J0KEP00L). Only the aggregate
`trackers_all.txt` feed is consumed; the per-protocol files it also publishes
are subsets of that aggregate.
"""

from __future__ import annotations

import httpx
from sqlalchemy.ext.asyncio import AsyncSession

from app.collectors.base import ImportStats, import_source_feeds
from app.config import Settings

SOURCE_NAME = "jokepool710"


class Jokepool710Collector:
    name = SOURCE_NAME

    async def import_once(
        self, session: AsyncSession, client: httpx.AsyncClient, settings: Settings
    ) -> ImportStats:
        return await import_source_feeds(
            session,
            client,
            source_name=SOURCE_NAME,
            primary_url=settings.jokepool710_all_url,
        )