Private GIT

Skip to content
Snippets Groups Projects
Commit 8dc3b0d5 authored by miigotu's avatar miigotu
Browse files

Merge pull request #2695 from SiCKRAGETV/duramato-patch-2

Duramato patch 2
parents 33438a5d e229d786
No related branches found
No related tags found
No related merge requests found
...@@ -131,23 +131,35 @@ class ExtraTorrentProvider(generic.TorrentProvider): ...@@ -131,23 +131,35 @@ class ExtraTorrentProvider(generic.TorrentProvider):
for item in entries: for item in entries:
title = item['title'] title = item['title']
info_hash = item['info_hash'] info_hash = item['info_hash']
url = item['enclosure']['@url'] size = int(item['size'])
size = int(item['enclosure']['@length'] or item['size'])
seeders = helpers.tryInt(item['seeders'],0) seeders = helpers.tryInt(item['seeders'],0)
leechers = helpers.tryInt(item['leechers'],0) leechers = helpers.tryInt(item['leechers'],0)
url = item['enclosure']['@url'] if 'enclosure' in item else self._magnet_from_details(item['link'])
if not seeders or seeders < self.minseed or leechers < self.minleech: if not all([title, url, seeders, seeders >= self.minseed, leechers >= self.minleech, size]):
continue continue
items[mode].append((title, url, seeders, leechers, size, info_hash)) items[mode].append((title, url, seeders, leechers, size, info_hash))
except Exception: except (AttributeError, TypeError, KeyError, ValueError):
logger.log(u"Failed parsing " + self.name + " Traceback: " + traceback.format_exc(), logger.ERROR) logger.log(u"Failed parsing " + self.name + " Traceback: " + traceback.format_exc(), logger.ERROR)
results += items[mode] results += items[mode]
return results return results
def _magnet_from_details(self, link):
details = self.getURL(link)
if not details:
return ''
match = re.search(r'href="(magnet.*?)"', details)
if not match:
return ''
return match.group(1)
def _get_title_and_url(self, item): def _get_title_and_url(self, item):
#pylint: disable=W0612 #pylint: disable=W0612
title, url, seeders, leechers, size, info_hash = item title, url, seeders, leechers, size, info_hash = item
...@@ -158,6 +170,7 @@ class ExtraTorrentProvider(generic.TorrentProvider): ...@@ -158,6 +170,7 @@ class ExtraTorrentProvider(generic.TorrentProvider):
if url: if url:
url = url.replace('&amp;', '&') url = url.replace('&amp;', '&')
return (title, url) return (title, url)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment