Change remove dead tor caches and stop searching episodes that have a magnet saved.

Change AlphaRatio provider freeleech mode; prevent spoiling user ratio from ambiguous filtered results.

The AR "Freeleech" search filter has changed to additionally return "Timed" and "Expired" freeleech items. However, this change makes results ambiguous to the point that a ratio can be ruined if an item snatched is expired or expiring. Therefore, when freeleech mode is active for this provider, all except pure *freeleech* items are discarded from results.
This commit is contained in:
JackDandy 2018-03-19 13:11:25 +00:00
parent 9be26da821
commit 9225c84016
3 changed files with 13 additions and 3 deletions

View file

@ -1,4 +1,9 @@
### 0.14.8 (2018-03-13 22:00:00 UTC)
### 0.14.9 (2018-03-19 13:10:00 UTC)
Change remove dead tor caches and stop searching episodes that have a magnet saved
Change AlphaRatio provider freeleech mode; prevent spoiling user ratio from ambiguous filtered results
### 0.14.8 (2018-03-13 22:00:00 UTC)
Fix changing status from "Skipped" to "Wanted" in Manage/Episode Status

View file

@ -89,7 +89,11 @@ class AlphaRatioProvider(generic.TorrentProvider):
head = head if None is not head else self._header_row(tr)
seeders, leechers, size = [tryInt(n, n) for n in [
cells[head[x]].get_text().strip() for x in 'seed', 'leech', 'size']]
if self._peers_fail(mode, seeders, leechers):
if self._peers_fail(mode, seeders, leechers) or \
(self.freeleech and
any([not tr.select('.tl_free'),
tr.select('.tl_timed'), tr.select('[title^="Timed Free"]'),
tr.select('.tl_expired'), tr.select('[title^="Expired Free"]')])):
continue
title = tr.find('a', title=rc['info']).get_text().strip()

View file

@ -640,7 +640,7 @@ class GenericProvider(object):
urls = ['http%s://%s/torrent/%s.torrent' % (u + (btih.upper(),))
for u in (('s', 'itorrents.org'), ('s', 'torrage.info'), ('', 'reflektor.karmorra.info'),
('s', 'torrentproject.se'), ('', 'thetorrent.org'), ('s', 'torcache.to'))]
('', 'thetorrent.org'))]
except (StandardError, Exception):
link_type = 'torrent'
urls = [result.url]
@ -695,6 +695,7 @@ class GenericProvider(object):
fp.write(result.url)
fp.flush()
os.fsync(fp.fileno())
saved = True
logger.log(u'Saved magnet link to file as some clients (or plugins) support this, %s' % final_file)
if 'blackhole' == sickbeard.TORRENT_METHOD:
logger.log('Tip: If your client fails to load magnet in files, ' +