From ddd89d4d77499a7bfebf7279a92552a3c71c8cfd Mon Sep 17 00:00:00 2001 From: labrys <labrys@users.noreply.github.com> Date: Thu, 7 Jan 2016 06:36:16 -0500 Subject: [PATCH] Fix file size conversion for torrentbytes --- sickbeard/providers/torrentbytes.py | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/sickbeard/providers/torrentbytes.py b/sickbeard/providers/torrentbytes.py index e22c5eb30..4a799d2be 100644 --- a/sickbeard/providers/torrentbytes.py +++ b/sickbeard/providers/torrentbytes.py @@ -24,6 +24,7 @@ import traceback from sickbeard import logger from sickbeard import tvcache from sickbeard.bs4_parser import BS4Parser +from sickrage.helper.common import convert_size from sickrage.providers.torrent.TorrentProvider import TorrentProvider @@ -106,7 +107,7 @@ class TorrentBytesProvider(TorrentProvider): for result in torrent_rows[1:]: cells = result.find_all('td') - size = None + torrent_size = None link = cells[1].find('a', attrs={'class': 'index'}) full_id = link['href'].replace('details.php?id=', '') @@ -132,11 +133,7 @@ class TorrentBytesProvider(TorrentProvider): leechers = int(cells[9].find('span').contents[0]) # Need size for failed downloads handling - if size is None: - if re.match(r'[0-9]+,?\.?[0-9]*[KkMmGg]+[Bb]+', cells[6].text): - size = self._convertSize(cells[6].text) - if not size: - size = -1 + torrent_size = cells[6].text if torrent_size is None else torrent_size except (AttributeError, TypeError): continue @@ -150,6 +147,8 @@ class TorrentBytesProvider(TorrentProvider): logger.log(u"Discarding torrent because it doesn't meet the minimum seeders or leechers: {0} (S:{1} L:{2})".format(title, seeders, leechers), logger.DEBUG) continue + size = convert_size(torrent_size) or -1 + item = title, download_url, size, seeders, leechers if mode != 'RSS': logger.log(u"Found result: %s " % title, logger.DEBUG) @@ -169,20 +168,6 @@ class TorrentBytesProvider(TorrentProvider): def seed_ratio(self): return self.ratio - def _convertSize(self, sizeString): - size = sizeString[:-2] - modifier = sizeString[-2:] - size = float(size) - if modifier in 'KB': - size *= 1024 ** 1 - elif modifier in 'MB': - size *= 1024 ** 2 - elif modifier in 'GB': - size *= 1024 ** 3 - elif modifier in 'TB': - size *= 1024 ** 4 - return long(size) - class TorrentBytesCache(tvcache.TVCache): def __init__(self, provider_obj): -- GitLab