Also added in our torrent class so that all our indexing sites can create the same class so to be easily managed under the same type.

This commit is contained in:
2017-11-02 15:17:08 +01:00
parent a8c4e84086
commit ccf55d2654

40
torrentSearch/torrent.py Normal file
View File

@@ -0,0 +1,40 @@
#!/usr/bin/env python3.6
from json import dumps
RELEASE_TYPES = ('bdremux', 'brremux', 'remux',
'bdrip', 'brrip', 'blu-ray', 'bluray', 'bdmv', 'bdr', 'bd5',
'web-cap', 'webcap', 'web cap',
'webrip', 'web rip', 'web-rip', 'web',
'webdl', 'web dl', 'web-dl', 'hdrip',
'dsr', 'dsrip', 'satrip', 'dthrip', 'dvbrip', 'hdtv', 'pdtv', 'tvrip', 'hdtvrip',
'dvdr', 'dvd-full', 'full-rip', 'iso',
'ts', 'hdts', 'hdts', 'telesync', 'pdvd', 'predvdrip',
'camrip', 'cam')
class Torrent(object):
def __init__(self, name, magnet=None, size=None, uploader=None, date=None,
seed_count=None, leech_count=None, url=None):
self.name = name
self.magnet = magnet
self.size = size
self.uploader = uploader
self.date = date
self.seed_count = seed_count
self.leech_count = leech_count
self.url = url
def find_release_type(self):
name = self.name.casefold()
return [r_type for r_type in RELEASE_TYPES if r_type in name]
def get_all_attr(self):
return ({'name': self.name, 'magnet': self.magnet,'uploader': self.uploader,
'size': self.size,'date': self.date,'seed': self.seed_count,
'leech': self.leech_count, 'url': self.url, 'release_type': self.find_release_type()})
def to_json(self):
return dumps(self.get_all_attr())
def __repr__(self):
return '<%s [%r]>' % (self.__class__.__name__, self.name)