diff options
Diffstat (limited to 'tpblite/models')
-rw-r--r-- | tpblite/models/constants.py | 23 | ||||
-rw-r--r-- | tpblite/models/torrents.py | 16 |
2 files changed, 27 insertions, 12 deletions
diff --git a/tpblite/models/constants.py b/tpblite/models/constants.py index 214b379..be65286 100644 --- a/tpblite/models/constants.py +++ b/tpblite/models/constants.py @@ -1,16 +1,23 @@ - class OPTION: @classmethod def printOptions(cls): - for opt in [x for x in cls.__dict__.keys() if not (x.startswith('__') or x.startswith('printOptions'))]: - if hasattr(getattr(cls,opt),'__dict__'): - for sub_opt in [y for y in getattr(cls,opt).__dict__.keys() if not (y.startswith('__') or y.startswith('printOptions'))]: - print('{}.{}'.format(opt,sub_opt)) + for opt in [ + x + for x in cls.__dict__.keys() + if not (x.startswith("__") or x.startswith("printOptions")) + ]: + if hasattr(getattr(cls, opt), "__dict__"): + for sub_opt in [ + y + for y in getattr(cls, opt).__dict__.keys() + if not (y.startswith("__") or y.startswith("printOptions")) + ]: + print("{}.{}".format(opt, sub_opt)) else: print(opt) -class ORDERS(OPTION): +class ORDERS(OPTION): class NAME(OPTION): DES = 1 ASC = 2 @@ -42,7 +49,7 @@ class ORDERS(OPTION): class CATEGORIES(OPTION): ALL = 0 - + class AUDIO(OPTION): ALL = 100 MUSIC = 101 @@ -102,4 +109,4 @@ class CATEGORIES(OPTION): PICTURES = 603 COVERS = 604 PHYSIBLES = 605 - OTHER = 699
\ No newline at end of file + OTHER = 699 diff --git a/tpblite/models/torrents.py b/tpblite/models/torrents.py index ada282f..2a9bffb 100644 --- a/tpblite/models/torrents.py +++ b/tpblite/models/torrents.py @@ -29,10 +29,14 @@ class Torrent: self.html_row = html_row self.title = self._getTitle() self.seeds, self.leeches = self._getPeers() - self.upload_date, self.filesize, self.byte_size, self.uploader = ( - self._getFileInfo() - ) + ( + self.upload_date, + self.filesize, + self.byte_size, + self.uploader, + ) = self._getFileInfo() self.magnetlink = self._getMagnetLink() + self.url = self._getUrl() def __str__(self): return "{0}, S: {1}, L: {2}, {3}".format( @@ -63,10 +67,14 @@ class Torrent: uploader = unicodedata.normalize("NFKD", t[2].replace("ULed by ", "").strip()) return uptime, size, byte_size, uploader + def _getUrl(self): + tag = self.html_row.find("a", class_="detLink") + return tag.get("href") + class Torrents: """ - Torrent object, takes query response and parses into + Torrent object, takes query response and parses into torrent list or dict. Has methods to select items from torrent list. """ |