Ejemplo n.º 1
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, 'ABNormal')

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = 'https://abnormal.ws'
        self.urls = {
            'login': urljoin(self.url, 'login.php'),
            'search': urljoin(self.url, 'torrents.php'),
        }

        # Proper Strings
        self.proper_strings = ['PROPER']

        # Cache
        self.cache = tvcache.TVCache(self, min_time=30)
Ejemplo n.º 2
0
    def __init__(self):

        TorrentProvider.__init__(self, "GimmePeers")

        self.urls = {
            'base_url': 'https://www.gimmepeers.com',
            'login': '******',
            'detail': 'https://www.gimmepeers.com/details.php?id=%s',
            'search': 'https://www.gimmepeers.com/browse.php',
            'download': 'https://gimmepeers.com/%s',
        }

        self.url = self.urls['base_url']

        self.username = None
        self.password = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self)

        self.search_params = {
            #c20=1&c21=1&c25=1&c24=1&c23=1&c22=1&c1=1
            "c20": 1, "c21": 1, "c25": 1, "c24": 1, "c23": 1, "c22": 1, "c1": 1
        }
Ejemplo n.º 3
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "Danishbits")

        # Credentials
        self.username = None
        self.passkey = None

        # Torrent Stats
        self.minseed = 0
        self.minleech = 0
        self.freeleech = True

        # URLs
        self.url = 'https://danishbits.org/'
        self.urls = {
            'login': self.url + 'login.php',
            'search': self.url + 'couchpotato.php',
        }

        # Proper Strings

        # Cache
        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll Danishbits every 10 minutes max
Ejemplo n.º 4
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "MoreThanTV")

        # Credentials
        self.username = None
        self.password = None
        self._uid = None
        self._hash = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = None

        # URLs
        self.url = 'https://www.morethan.tv/'
        self.urls = {
            'login': urljoin(self.url, 'login.php'),
            'search': urljoin(self.url, 'torrents.php'),
        }

        # Proper Strings
        self.proper_strings = ['PROPER', 'REPACK']

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 5
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "Nebulance")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = None

        # URLs
        self.url = 'https://nebulance.io/'
        self.urls = {
            'login': urljoin(self.url, '/login.php'),
            'search': urljoin(self.url, '/torrents.php'),
        }

        # Proper Strings

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 6
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "FileList")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = "https://filelist.ro"
        self.urls = {
            "login": urljoin(self.url, "takelogin.php"),
            "search": urljoin(self.url, "browse.php"),
        }

        # Proper Strings
        self.proper_strings = ["PROPER", "REPACK"]

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 7
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "TorrentBytes")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = False

        # URLs
        self.url = "https://www.torrentbytes.net"
        self.urls = {
            "login": urljoin(self.url, "takelogin.php"),
            "search": urljoin(self.url, "browse.php")
        }

        # Proper Strings
        self.proper_strings = ["PROPER", "REPACK"]

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 8
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "Immortalseed")

        # Credentials
        self.username = None
        self.password = None
        self.passkey = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = None

        # URLs
        self.url = 'https://immortalseed.me/'
        self.urls = {
            'login': urljoin(self.url, 'takelogin.php'),
            'search': urljoin(self.url, 'browse.php'),
            'rss': urljoin(self.url, 'rss.php'),
        }

        # Proper Strings
        self.proper_strings = ['PROPER', 'REPACK']

        # Cache
        self.cache = ImmortalseedCache(self, min_time=20)
Ejemplo n.º 9
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "ThePirateBay")

        # Credentials
        self.public = True

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.confirmed = True

        # URLs
        self.url = "https://thepiratebay.org"
        self.urls = {
            "rss": [urljoin(self.url, "browse/208/0/4/0"), urljoin(self.url, "browse/205/0/4/0")],
            "search": urljoin(self.url, "search"),
        }
        self.custom_url = None

        # Proper Strings

        # Cache
        self.cache = tvcache.TVCache(self, min_time=30)  # only poll ThePirateBay every 30 minutes max

        self.magnet_regex = re.compile(r'magnet:\?xt=urn:btih:\w{32,40}(:?&dn=[\w. %+-]+)*(:?&tr=(:?tcp|https?|udp)[\w%. +-]+)*')
Ejemplo n.º 10
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, 'TorrentDay')

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = False

        # URLs
        self.custom_url = None
        self.url = 'https://www.torrentday.com'
        self.urls = {
            'login': urljoin(self.url, '/t'),
            'search': urljoin(self.url, '/t.json'),
            'download': urljoin(self.url, '/download.php/')
        }

        self.categories = {
            'Season': {'14': 1},
            'Episode': {'2': 1, '26': 1, '7': 1, '24': 1, '34': 1},
            'RSS': {'2': 1, '26': 1, '7': 1, '24': 1, '34': 1, '14': 1}
        }

        self.enable_cookies = True

        # Cache
        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll IPTorrents every 10 minutes max
Ejemplo n.º 11
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, 'ArcheTorrent')

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # Freelech
        self.freeleech = False

        # URLs
        self.url = 'https://www.archetorrent.com/'
        self.urls = {
            'login': urljoin(self.url, 'account-login.php'),
            'search': urljoin(self.url, 'torrents-search.php'),
            'download': urljoin(self.url, 'download.php'),
        }

        # Proper Strings
        self.proper_strings = ['PROPER']

        # Cache
        self.cache = tvcache.TVCache(self, min_time=15)
Ejemplo n.º 12
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "Torrentz")

        # Credentials
        self.public = True

        # Feed verified does not exist on this clone
        # self.confirmed = True

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = 'https://torrentz2.eu/'
        self.urls = {
            'verified': 'https://torrentz2.eu/feed_verified',
            'feed': 'https://torrentz2.eu/feed',
            'base': self.url,
        }

        # Proper Strings

        # Cache
        self.cache = tvcache.TVCache(self, min_time=15)  # only poll Torrentz every 15 minutes max
Ejemplo n.º 13
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "TorrentLeech")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = "https://www.torrentleech.org"
        self.urls = {
            "login": urljoin(self.url, "user/account/login/"),
            "search": urljoin(self.url, "torrents/browse/list/"),
            "download": urljoin(self.url, "download/"),
        }

        # Proper Strings
        self.proper_strings = ["PROPER", "REPACK"]

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 14
0
    def __init__(self):

        TorrentProvider.__init__(self, "SceneAccess")

        self.username = None
        self.password = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self)  # only poll SCC every 20 minutes max

        self.urls = {
            'base_url': 'https://sceneaccess.eu',
            'login': '******',
            'detail': 'https://www.sceneaccess.eu/details?id=%s',
            'search': 'https://sceneaccess.eu/all?search=%s&method=1&%s',
            'download': 'https://www.sceneaccess.eu/%s'
        }

        self.url = self.urls['base_url']

        self.categories = {
            'Season': 'c26=26&c44=44&c45=45',  # Archive, non-scene HD, non-scene SD; need to include non-scene because WEB-DL packs get added to those categories
            'Episode': 'c17=17&c27=27&c33=33&c34=34&c44=44&c45=45',  # TV HD, TV SD, non-scene HD, non-scene SD, foreign XviD, foreign x264
            'RSS': 'c17=17&c26=26&c27=27&c33=33&c34=34&c44=44&c45=45'  # Season + Episode
        }
Ejemplo n.º 15
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "GFTracker")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = 'https://www.thegft.org/'
        self.urls = {
            'login': self.url + 'loginsite.php',
            'search': self.url + 'browse.php',
        }

        # Proper Strings
        self.proper_strings = ['PROPER', 'REPACK', 'REAL']

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 16
0
    def __init__(self):

        TorrentProvider.__init__(self, "HDSpace")

        self.username = None
        self.password = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self, min_time=10)  # only poll HDSpace every 10 minutes max

        self.urls = {'base_url': 'https://hd-space.org/',
                     'login': '******',
                     'search': 'https://hd-space.org/index.php?page=torrents&search=%s&active=1&options=0',
                     'rss': 'https://hd-space.org/rss_torrents.php?feed=dl'
                     }

        self.categories = [15, 21, 22, 24, 25, 40]  # HDTV/DOC 1080/720, bluray, remux
        self.urls['search'] += '&category='
        for cat in self.categories:
            self.urls['search'] += str(cat) + '%%3B'
            self.urls['rss'] += '&cat[]=' + str(cat)
        self.urls['search'] = self.urls['search'][:-4]  # remove extra %%3B

        self.url = self.urls['base_url']
Ejemplo n.º 17
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "AlphaRatio")

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = "http://alpharatio.cc"
        self.urls = {
            "login": urljoin(self.url, "login.php"),
            "search": urljoin(self.url, "torrents.php"),
        }

        # Proper Strings
        self.proper_strings = ["PROPER", "REPACK"]

        # Cache
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 18
0
    def __init__(self):

        TorrentProvider.__init__(self, "BitCannon")

        self.minseed = None
        self.minleech = None
        self.custom_url = None
        self.api_key = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": ["tv", "anime"]})
Ejemplo n.º 19
0
    def __init__(self):

        TorrentProvider.__init__(self, 'Newpct')

        self.onlyspasearch = None

        self.url = 'http://www.newpct.com'
        self.urls = {'search': urljoin(self.url, 'index.php')}

        self.cache = tvcache.TVCache(self, min_time=20)
Ejemplo n.º 20
0
    def __init__(self):

        TorrentProvider.__init__(self, 'XThor')

        self.url = 'https://xthor.to'
        self.urls = {'search': 'https://api.xthor.to'}

        self.freeleech = None
        self.api_key = None

        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll XThor every 10 minutes max
Ejemplo n.º 21
0
    def __init__(self):

        TorrentProvider.__init__(self, "Torrent9")

        self.public = True
        self.minseed = None
        self.minleech = None
        self.url = "https://www.torrent9.ch"

        self.proper_strings = ['PROPER', 'REPACK']
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 22
0
    def __init__(self):

        TorrentProvider.__init__(self, "BitCannon")

        self.minseed = None
        self.minleech = None
        self.custom_url = None
        self.api_key = None

        self.cache = tvcache.TVCache(self,
                                     search_params={"RSS": ["tv", "anime"]})
Ejemplo n.º 23
0
    def __init__(self):

        TorrentProvider.__init__(self, "Torrent9")

        self.public = True
        self.minseed = None
        self.minleech = None
        self.url = "http://www.torrent9.red"

        self.proper_strings = ['PROPER', 'REPACK']
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 24
0
    def __init__(self):

        TorrentProvider.__init__(self, "Cpasbien")

        self.public = True
        self.minseed = None
        self.minleech = None
        self.url = "http://www.cpasbien.cx"

        self.proper_strings = ['PROPER', 'REPACK']
        self.cache = tvcache.TVCache(self)
        self.ability_status = self.PROVIDER_BACKLOG
Ejemplo n.º 25
0
    def __init__(self):

        TorrentProvider.__init__(self, 'XThor')

        self.url = 'https://xthor.tk'
        self.urls = {'search': 'https://api.xthor.tk'}

        self.freeleech = None
        self.api_key = None

        self.cache = tvcache.TVCache(
            self, min_time=10)  # Only poll XThor every 10 minutes max
Ejemplo n.º 26
0
    def __init__(self):

        TorrentProvider.__init__(self, "Cpasbien")

        self.public = True
        self.minseed = None
        self.minleech = None
        self.url = "http://www.cpasbien.cx"

        self.proper_strings = ['PROPER', 'REPACK']
        self.cache = tvcache.TVCache(self)
        self.ability_status = self.PROVIDER_BACKLOG
    def __init__(self):

        TorrentProvider.__init__(self, "TNTVillage")

        self._uid = None
        self._hash = None
        self.username = None
        self.password = None
        self.cat = None
        self.engrelease = None
        self.page = 10
        self.subtitle = None
        self.minseed = None
        self.minleech = None

        self.hdtext = [' - Versione 720p',
                       ' Versione 720p',
                       ' V 720p',
                       ' V 720',
                       ' V HEVC',
                       ' V  HEVC',
                       ' V 1080',
                       ' Versione 1080p',
                       ' 720p HEVC',
                       ' Ver 720',
                       ' 720p HEVC',
                       ' 720p']

        self.category_dict = {'Serie TV': 29,
                              'Cartoni': 8,
                              'Anime': 7,
                              'Programmi e Film TV': 1,
                              'Documentari': 14,
                              'All': 0}

        self.urls = {'base_url': 'http://forum.tntvillage.scambioetico.org',
                     'login': '******',
                     'detail': 'http://forum.tntvillage.scambioetico.org/index.php?showtopic=%s',
                     'search': 'http://forum.tntvillage.scambioetico.org/?act=allreleases&%s',
                     'search_page': 'http://forum.tntvillage.scambioetico.org/?act=allreleases&st={0}&{1}',
                     'download': 'http://forum.tntvillage.scambioetico.org/index.php?act=Attach&type=post&id=%s'}

        self.url = self.urls['base_url']

        self.sub_string = ['sub', 'softsub']

        self.proper_strings = ['PROPER', 'REPACK']

        self.categories = "cat=29"

        self.cache = tvcache.TVCache(self, min_time=30)  # only poll TNTVillage every 30 minutes max
Ejemplo n.º 28
0
    def __init__(self):
        """ Initialize the class """
        TorrentProvider.__init__(self, 'Norbits')

        self.username = None
        self.passkey = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self, min_time=20)  # only poll Norbits every 15 minutes max

        self.url = 'https://norbits.net'
        self.urls = {'search': self.url + '/api2.php?action=torrents',
                     'download': self.url + '/download.php?'}
Ejemplo n.º 29
0
    def __init__(self):

        TorrentProvider.__init__(self, "HD4Free")

        self.url = 'https://hd4free.xyz'
        self.urls = {'search': urljoin(self.url, '/searchapi.php')}

        self.freeleech = None
        self.username = None
        self.api_key = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll HD4Free every 10 minutes max
Ejemplo n.º 30
0
    def __init__(self):

        TorrentProvider.__init__(self, "HD4Free")

        self.url = 'https://hd4free.xyz'
        self.urls = {'search': urljoin(self.url, '/searchapi.php')}

        self.freeleech = None
        self.username = None
        self.api_key = None
        self.minseed = None
        self.minleech = None

        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll HD4Free every 10 minutes max
Ejemplo n.º 31
0
    def test__get_size(self):
        """
        Test _get_size
        """
        items_list = [
            None, {}, {'size': None}, {'size': ''}, {'size': '0'}, {'size': '123'}, {'size': '12.3'}, {'size': '-123'},
            {'size': '-12.3'}, {'size': '1100000'}, {'size': 0}, {'size': 123}, {'size': 12.3}, {'size': -123},
            {'size': -12.3}, {'size': 1100000}, [], [None], [1100000], [None, None, None], [None, None, ''],
            [None, None, '0'], [None, None, '123'], [None, None, '12.3'], [None, None, '-123'], [None, None, '-12.3'],
            [None, None, '1100000'], [None, None, 0], [None, None, 123], [None, None, 12.3], [None, None, -123],
            [None, None, -12.3], [None, None, 1100000], (), (None, None, None), (None, None, ''), (None, None, '0'),
            (None, None, '123'), (None, None, '12.3'), (None, None, '-123'), (None, None, '-12.3'),
            (None, None, '1100000'), '', '0', '123', '12.3', '-123', '-12.3', '1100000', 0, 123, 12.3, -123, -12.3,
            1100000
        ]
        results_list = [
            -1, -1, -1, -1, 0, 123, -1, -123, -1, 1100000, -1, -1, -1, -1, -1, 1100000, -1, -1, -1, -1, -1, 0, 123, -1,
            -123, -1, 1100000, -1, -1, -1, -1, -1, 1100000, -1, -1, -1, 0, 123, -1, -123, -1, 1100000, -1, -1, -1, -1,
            -1, -1, -1, -1, -1, -1, -1, -1, -1
        ]

        unicode_items_list = [
            {'size': None}, {'size': ''}, {'size': '0'}, {'size': '123'}, {'size': '12.3'}, {'size': '-123'},
            {'size': '-12.3'}, {'size': '1100000'}, {'size': 0}, {'size': 123}, {'size': 12.3}, {'size': -123},
            {'size': -12.3}, {'size': 1100000}, [None, None, ''], [None, None, '0'], [None, None, '123'],
            [None, None, '12.3'], [None, None, '-123'], [None, None, '-12.3'], [None, None, '1100000'],
            (None, None, ''), (None, None, '0'), (None, None, '123'), (None, None, '12.3'), (None, None, '-123'),
            (None, None, '-12.3'), (None, None, '1100000'), '', '0', '123', '12.3', '-123', '-12.3', '1100000'
        ]
        unicode_results_list = [
            -1, -1, 0, 123, -1, -123, -1, 1100000, -1, -1, -1, -1, -1, 1100000, -1, 0, 123, -1, -123, -1, 1100000, -1,
            0, 123, -1, -123, -1, 1100000, -1, -1, -1, -1, -1, -1, -1
        ]

        self.assertEqual(
            len(items_list), len(results_list),
            'Number of parameters ({0:d}) and results ({1:d}) does not match'.format(len(items_list), len(results_list))
        )

        self.assertEqual(
            len(unicode_items_list), len(unicode_results_list),
            'Number of parameters ({0:d}) and results ({1:d}) does not match'.format(
                len(unicode_items_list), len(unicode_results_list))
        )

        for (index, item) in enumerate(items_list):
            self.assertEqual(TorrentProvider('Test Provider')._get_size(item), results_list[index])

        for (index, item) in enumerate(unicode_items_list):
            self.assertEqual(TorrentProvider('Test Provider')._get_size(item), unicode_results_list[index])
Ejemplo n.º 32
0
    def __init__(self):

        TorrentProvider.__init__(self, "BTN")

        self.supports_absolute_numbering = True

        self.api_key = None

        self.cache = BTNCache(self, min_time=15)  # Only poll BTN every 15 minutes max

        self.urls = {'base_url': 'http://api.broadcasthe.net',
                     'website': 'http://broadcasthe.net/', }

        self.url = self.urls['website']
Ejemplo n.º 33
0
    def __init__(self):

        TorrentProvider.__init__(self, "BTN")

        self.supports_absolute_numbering = True

        self.api_key = None

        self.cache = BTNCache(self, min_time=15)  # Only poll BTN every 15 minutes max

        self.urls = {'base_url': 'http://api.broadcasthe.net',
                     'website': 'http://broadcasthe.net/', }

        self.url = self.urls['website']
    def __init__(self):
        TorrentProvider.__init__(self, 'ilCorsaroNero')

        categories = [  # Categories included in searches
            15,  # Serie TV
            5,  # Anime
            1,  # BDRip
            20,  # DVD
            19,  # Screener
        ]
        categories = ','.join(map(six.text_type, categories))

        self.url = 'https://ilcorsaronero.ch'
        self.urls = {
            'search':
            urljoin(
                self.url,
                'argh.php?search={0}&order=data&by=DESC&page={1}&category=' +
                categories),
        }

        self.public = True
        self.minseed = None
        self.minleech = None

        self.engrelease = None
        self.subtitle = None
        self.max_pages = 10

        self.proper_strings = ['PROPER', 'REPACK']
        self.sub_string = ['sub', 'softsub']

        self.hdtext = [
            ' - Versione 720p',
            ' Versione 720p',
            ' V 720p',
            ' V 720',
            ' V HEVC',
            ' V  HEVC',
            ' V 1080',
            ' Versione 1080p',
            ' 720p HEVC',
            ' Ver 720',
            ' 720p HEVC',
            ' 720p',
        ]

        self.cache = tvcache.TVCache(
            self, min_time=30)  # only poll ilCorsaroNero every 30 minutes max
Ejemplo n.º 35
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, 'TorrentDay')

        # Credentials
        self.username = None
        self.password = None

        # Torrent Stats
        self.minseed = None
        self.minleech = None
        self.freeleech = False

        # URLs
        self.custom_url = None
        self.url = 'https://www.torrentday.com'
        self.urls = {
            'login': urljoin(self.url, '/t'),
            'search': urljoin(self.url, '/t.json'),
            'download': urljoin(self.url, '/download.php/')
        }

        self.categories = {
            'Season': {
                '14': 1
            },
            'Episode': {
                '2': 1,
                '26': 1,
                '7': 1,
                '24': 1,
                '34': 1
            },
            'RSS': {
                '2': 1,
                '26': 1,
                '7': 1,
                '24': 1,
                '34': 1,
                '14': 1
            }
        }

        self.enable_cookies = True

        # Cache
        self.cache = tvcache.TVCache(
            self, min_time=10)  # Only poll IPTorrents every 10 minutes max
Ejemplo n.º 36
0
    def __init__(self):

        TorrentProvider.__init__(self, "EliteTorrent")

        self.onlyspasearch = None
        self.minseed = None
        self.minleech = None
        self.cache = tvcache.TVCache(self)  # Only poll EliteTorrent every 20 minutes max

        self.urls = {
            'base_url': 'https://www.elitetorrent.eu',
            'search': 'https://www.elitetorrent.eu/torrents.php'
        }

        self.url = self.urls['base_url']
Ejemplo n.º 37
0
    def __init__(self):

        TorrentProvider.__init__(self, 'Nyaa')

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.url = 'https://nyaa.si'

        self.minseed = 0
        self.minleech = 0
        self.confirmed = False

        self.cache = tvcache.TVCache(self, min_time=20)  # only poll Nyaa every 20 minutes max
Ejemplo n.º 38
0
    def __init__(self):

        TorrentProvider.__init__(self, "HDBits")

        self.username = None
        self.passkey = None

        self.cache = HDBitsCache(self, min_time=15)  # only poll HDBits every 15 minutes max

        self.url = 'https://hdbits.org'
        self.urls = {
            'search': urljoin(self.url, '/api/torrents'),
            'rss': urljoin(self.url, '/api/torrents'),
            'download': urljoin(self.url, '/download.php')
        }
Ejemplo n.º 39
0
    def __init__(self):

        TorrentProvider.__init__(self, "Torrent9")

        self.public = True
        self.minseed = None
        self.minleech = None
        self._original_url = "https://ww1.torrent9.nz/"
        # self._original_url = "https://www.torrents9.pw"
        self._custom_url = None
        self._used_url = None
        self._recheck_url = True

        self.proper_strings = ['PROPER', 'REPACK']
        self.cache = tvcache.TVCache(self)
Ejemplo n.º 40
0
    def __init__(self):

        TorrentProvider.__init__(self, "HDBits")

        self.username = None
        self.passkey = None

        self.cache = HDBitsCache(self, min_time=15)  # only poll HDBits every 15 minutes max

        self.url = 'https://hdbits.org'
        self.urls = {
            'search': urljoin(self.url, '/api/torrents'),
            'rss': urljoin(self.url, '/api/torrents'),
            'download': urljoin(self.url, '/download.php')
        }
Ejemplo n.º 41
0
    def __init__(self):

        TorrentProvider.__init__(self, 'Nyaa')

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.url = 'https://nyaa.si'

        self.minseed = 0
        self.minleech = 0
        self.confirmed = False

        self.cache = tvcache.TVCache(
            self, min_time=20)  # only poll Nyaa every 20 minutes max
Ejemplo n.º 42
0
 def test___init__(self):
     """
     Test __init__
     """
     self.assertEqual(
         TorrentProvider('Test Provider').provider_type,
         GenericProvider.TORRENT)
Ejemplo n.º 43
0
    def __init__(self):

        TorrentProvider.__init__(self, "KickAssTorrents")

        self.public = True

        self.confirmed = True
        self.minseed = None
        self.minleech = None

        self.url = "https://kat.cr"
        self.urls = {"search": urljoin(self.url, "%s/")}

        self.custom_url = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": ["tv", "anime"]})
Ejemplo n.º 44
0
    def __init__(self):

        TorrentProvider.__init__(self, "SkyTorrents")

        self.public = True

        self.minseed = None
        self.minleech = None

        self.url = "https://www.skytorrents.lol"
        # https://www.skytorrents.lol/rss?query=game+of+thrones&type=video&sort=seeders
        self.urls = {"search": urljoin(self.url, "/rss")}

        self.custom_url = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": [""]})
Ejemplo n.º 45
0
    def __init__(self):

        TorrentProvider.__init__(self, "SkyTorrents")

        self.public = True

        self.minseed = None
        self.minleech = None

        self.url = "https://www.skytorrents.lol"
        self.urls = {"search": urljoin(self.url, "/rss/all/{sorting}/{page}/{search_string}")}

        self.custom_url = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": [""]})

        self.regex = re.compile('(?P<seeders>\d+) seeder\(s\), (?P<leechers>\d+) leecher\(s\), (\d+) file\(s\) (?P<size>[^\]]*)')
Ejemplo n.º 46
0
    def __init__(self):

        TorrentProvider.__init__(self, "TokyoToshokan")

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.minseed = None
        self.minleech = None

        self.url = 'http://tokyotosho.info/'
        self.urls = {
            'search': self.url + 'search.php',
            'rss': self.url + 'rss.php'
        }
        self.cache = tvcache.TVCache(self, min_time=15)  # only poll TokyoToshokan every 15 minutes max
Ejemplo n.º 47
0
    def __init__(self):

        TorrentProvider.__init__(self, "TokyoToshokan")

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.minseed = None
        self.minleech = None

        self.url = 'https://www.tokyotosho.info/'
        self.urls = {
            'search': self.url + 'search.php',
            'rss': self.url + 'rss.php'
        }
        self.cache = tvcache.TVCache(self, min_time=15)  # only poll TokyoToshokan every 15 minutes max
Ejemplo n.º 48
0
    def __init__(self):

        TorrentProvider.__init__(self, "SkyTorrents")

        self.public = True

        self.minseed = None
        self.minleech = None

        self.url = "https://www.skytorrents.lol"
        # https://www.skytorrents.lol/?query=arrow&category=show&tag=hd&sort=seeders&type=video
        # https://www.skytorrents.lol/top100?category=show&type=video&sort=created
        self.urls = {"search": urljoin(self.url, "/"), 'rss': urljoin(self.url, "/top100")}

        self.custom_url = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": [""]})
    def __init__(self):

        TorrentProvider.__init__(self, 'Shazbat.tv')

        self.supports_backlog = False

        self.passkey = None
        self.options = None

        self.cache = ShazbatCache(self, min_time=20)

        self.url = 'http://www.shazbat.tv'
        self.urls = {
            'login': urljoin(self.url, 'login'),
            'rss_recent': urljoin(self.url, 'rss/recent'),
            # 'rss_queue': urljoin(self.url, 'rss/download_queue'),
            # 'rss_followed': urljoin(self.url, 'rss/followed')
        }
Ejemplo n.º 50
0
    def __init__(self, name, url, cookies='',  # pylint: disable=too-many-arguments
                 titleTAG='title', search_mode='eponly', search_fallback=False,
                 enable_daily=False, enable_backlog=False):

        TorrentProvider.__init__(self, name)

        self.cache = TorrentRssCache(self, min_time=15)
        self.url = url.rstrip('/')

        self.supports_backlog = False

        self.search_mode = search_mode
        self.search_fallback = search_fallback
        self.enable_daily = enable_daily
        self.enable_backlog = enable_backlog
        self.enable_cookies = True
        self.cookies = cookies
        self.titleTAG = titleTAG
Ejemplo n.º 51
0
    def __init__(self):

        TorrentProvider.__init__(self, 'HorribleSubs')

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.minseed = None
        self.minleech = None

        self.url = 'http://horriblesubs.info/'
        self.urls = {
            'search': self.url + 'api.php',
            'rss': self.url + 'rss.php'
        }

        self.cache = tvcache.TVCache(self, min_time=15)  # only poll HorribleSubs every 15 minutes max
Ejemplo n.º 52
0
    def __init__(self):

        TorrentProvider.__init__(self, 'HorribleSubs')

        self.public = True
        self.supports_absolute_numbering = True
        self.anime_only = True

        self.minseed = None
        self.minleech = None

        self.url = 'http://horriblesubs.info/'
        self.urls = {
            'search': self.url + 'api.php',
            'rss': self.url + 'rss.php'
        }

        self.cache = tvcache.TVCache(self, min_time=15)  # only poll HorribleSubs every 15 minutes max
Ejemplo n.º 53
0
    def __init__(self):

        # Provider Init
        TorrentProvider.__init__(self, "EZTV")

        # Credentials
        self.public = True

        # Torrent Stats
        self.minseed = None
        self.minleech = None

        # URLs
        self.url = "https://eztv.io"
        self.api = urljoin(self.url, "api/get-torrents")

        # Cache
        self.cache = tvcache.TVCache(
            self, min_time=30)  # only poll ThePirateBay every 30 minutes max
Ejemplo n.º 54
0
    def __init__(self):

        TorrentProvider.__init__(self, "LimeTorrents")

        self.urls = {
            'index': 'https://www.limetorrents.info/',
            'search': 'https://www.limetorrents.info/searchrss/',
            'rss': 'https://www.limetorrents.info/rss/tv/'
        }

        self.url = self.urls['index']

        self.public = True
        self.minseed = None
        self.minleech = None

        self.proper_strings = ['PROPER', 'REPACK', 'REAL']

        self.cache = tvcache.TVCache(self, search_params={'RSS': ['rss']})
Ejemplo n.º 55
0
    def __init__(self):

        TorrentProvider.__init__(self, "Rarbg")

        self.public = True
        self.minseed = None
        self.ranked = None
        self.sorting = None
        self.minleech = None
        self.token = None
        self.token_expires = None

        # Spec: https://torrentapi.org/apidocs_v2.txt
        self.url = "https://rarbg.com"
        self.urls = {"api": "http://torrentapi.org/pubapi_v2.php"}

        self.proper_strings = ["{{PROPER|REPACK}}"]

        self.cache = tvcache.TVCache(self, min_time=10)  # only poll RARBG every 10 minutes max
Ejemplo n.º 56
0
    def __init__(self):

        TorrentProvider.__init__(self, "Demonoid")

        self.public = True
        self.minseed = None
        self.sorting = None
        self.minleech = None

        self.url = "https://demonoid.is"
        self.urls = {"RSS": urljoin(self.url, 'rss.php'), 'search': urljoin(self.url, 'files/')}

        self.proper_strings = ["PROPER|REPACK"]

        self.cache_rss_params = {
            "category": 12, "quality": 58, "seeded": 0, "external": 2, "sort": "added", "order": "desc"
        }

        self.cache = DemonoidCache(self)
Ejemplo n.º 57
0
    def __init__(self):

        TorrentProvider.__init__(self, 'TvChaosUK')

        self.username = None
        self.password = None

        self.minseed = None
        self.minleech = None
        self.freeleech = None

        self.url = 'https://www.tvchaosuk.com/'
        self.urls = {
            'login': self.url + 'takelogin.php',
            'index': self.url + 'index.php',
            'search': self.url + 'browse.php'
        }

        self.cache = tvcache.TVCache(self)
Ejemplo n.º 58
0
    def __init__(self):

        TorrentProvider.__init__(self, "IPTorrents")
        self.enable_cookies = True

        self.username = None
        self.password = None
        self.freeleech = False
        self.minseed = None
        self.minleech = None
        self.custom_url = None

        self.cache = tvcache.TVCache(self, min_time=10)  # Only poll IPTorrents every 10 minutes max

        self.urls = {'base_url': 'https://iptorrents.eu',
                     'login': '******',
                     'search': 'https://iptorrents.eu/t?%s%s&q=%s&qf=#torrents'}

        self.url = self.urls['base_url']

        self.categories = '73=&60='
Ejemplo n.º 59
0
    def test__get_storage_dir(self):
        """
        Test _get_storage_dir
        """
        test_cases = [
            None, 123, 12.3, '', os.path.join('some', 'path', 'to', 'folder')
        ]

        for torrent_dir in test_cases:
            sickbeard.TORRENT_DIR = torrent_dir

            self.assertEqual(TorrentProvider('Test Provider')._get_storage_dir(), torrent_dir)
Ejemplo n.º 60
0
    def __init__(self):

        TorrentProvider.__init__(self, "SkyTorrents")

        self.public = True

        self.minseed = None
        self.minleech = None

        self.url = "https://www.skytorrents.lol"
        self.urls = {
            "search":
            urljoin(self.url, "/rss/all/{sorting}/{page}/{search_string}")
        }

        self.custom_url = None

        self.cache = tvcache.TVCache(self, search_params={"RSS": [""]})

        self.regex = re.compile(
            '(?P<seeders>\d+) seeder\(s\), (?P<leechers>\d+) leecher\(s\), (\d+) file\(s\) (?P<size>[^\]]*)'
        )