From cd85ad95abbf88e423569597313efbacce9ede4c Mon Sep 17 00:00:00 2001 From: Dustyn Gibson <dustyn.gibson@gmail.com> Date: Fri, 12 Jun 2015 18:13:21 -0700 Subject: [PATCH] Fix removeWords, ignoreWords, requiredWords fixes SiCKRAGETV/sickrage-issues#1294 SiCKRAGETV/sickrage-issues#1761 and proper fix for SiCKRAGETV/sickrage-issues#1074 --- sickbeard/helpers.py | 31 +++++++++++++++++++++++----- sickbeard/providers/alpharatio.py | 2 -- sickbeard/providers/bitsoup.py | 2 -- sickbeard/providers/freshontv.py | 2 -- sickbeard/providers/generic.py | 26 +++-------------------- sickbeard/providers/hdbits.py | 2 -- sickbeard/providers/hdtorrents.py | 2 -- sickbeard/providers/kat.py | 2 -- sickbeard/providers/morethantv.py | 2 -- sickbeard/providers/oldpiratebay.py | 1 - sickbeard/providers/rarbg.py | 2 -- sickbeard/providers/rsstorrent.py | 2 -- sickbeard/providers/scc.py | 2 -- sickbeard/providers/scenetime.py | 2 -- sickbeard/providers/speedcd.py | 2 -- sickbeard/providers/t411.py | 2 -- sickbeard/providers/thepiratebay.py | 1 - sickbeard/providers/tntvillage.py | 2 -- sickbeard/providers/tokyotoshokan.py | 2 -- sickbeard/providers/torrentbytes.py | 2 -- sickbeard/providers/torrentday.py | 2 -- sickbeard/providers/torrentleech.py | 2 -- 22 files changed, 29 insertions(+), 66 deletions(-) diff --git a/sickbeard/helpers.py b/sickbeard/helpers.py index 81c5473f..2017e671 100644 --- a/sickbeard/helpers.py +++ b/sickbeard/helpers.py @@ -106,12 +106,33 @@ def remove_non_release_groups(name): Remove non release groups from name """ - if name and "-" in name: - name_group = name.rsplit('-', 1) - if name_group[-1].upper() in ["RP", "NZBGEEK"]: - name = name_group[0] + if not name: + return name - return name + removeWordsList = {'\[rartv\]$': 'searchre', + '\[rarbg\]$': 'searchre', + '\[eztv\]$': 'searchre', + '\[ettv\]$': 'searchre', + '\[GloDLS\]$': 'searchre', + '\[silv4\]$': 'searchre', + '\[Seedbox\]$': 'searchre', + '\[AndroidTwoU\]$': 'searchre', + '\.RiPSaLoT$': 'searchre', + '-NZBGEEK$': 'searchre', + '-RP$': 'searchre', + } + + _name = name + for remove_string, remove_type in removeWordsList.iteritems(): + if remove_type == 'search': + _name = _name.replace(remove_string, '') + elif remove_type == 'searchre': + _name = re.sub(r'(?i)' + remove_string, '', _name) + + #if _name != name: + # logger.log(u'Change title from {old_name} to {new_name}'.format(old_name=name, new_name=_name), logger.DEBUG) + + return _name def replaceExtension(filename, newExt): diff --git a/sickbeard/providers/alpharatio.py b/sickbeard/providers/alpharatio.py index 91d006fa..23cc8112 100755 --- a/sickbeard/providers/alpharatio.py +++ b/sickbeard/providers/alpharatio.py @@ -222,8 +222,6 @@ class AlphaRatioProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/bitsoup.py b/sickbeard/providers/bitsoup.py index 080bcaf0..03a95bfc 100644 --- a/sickbeard/providers/bitsoup.py +++ b/sickbeard/providers/bitsoup.py @@ -228,8 +228,6 @@ class BitSoupProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/freshontv.py b/sickbeard/providers/freshontv.py index 24572d40..d75474d5 100755 --- a/sickbeard/providers/freshontv.py +++ b/sickbeard/providers/freshontv.py @@ -326,8 +326,6 @@ class FreshOnTVProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/generic.py b/sickbeard/providers/generic.py index 4f35c7b4..7b6e8ca3 100644 --- a/sickbeard/providers/generic.py +++ b/sickbeard/providers/generic.py @@ -499,31 +499,11 @@ class TorrentProvider(GenericProvider): GenericProvider.__init__(self, name) self.providerType = GenericProvider.TORRENT - - # Don't add a rule to remove everything between bracket, it will break anime release - self.removeWordsList = {'\[rartv\]$': 'searchre', - '\[rarbg\]$': 'searchre', - '\[eztv\]$': 'searchre', - '\[ettv\]$': 'searchre', - '\[GloDLS\]$': 'searchre', - '\[silv4\]$': 'searchre', - '\[Seedbox\]$': 'searchre', - '\[AndroidTwoU\]$': 'searchre', - '\.RiPSaLoT$': 'searchre', - } def _clean_title_from_provider(self, title): - torrent_title = title - for remove_string, remove_type in self.removeWordsList.iteritems(): - if remove_type == 'search': - torrent_title = torrent_title.replace(remove_string, '') - elif remove_type == 'searchre': - torrent_title = re.sub(remove_string, '', torrent_title) - - if torrent_title != title: - logger.log(u'Change title from {old_name} to {new_name}'.format(old_name=title, new_name=torrent_title), logger.DEBUG) - - return torrent_title + if title: + title = u'' + title.replace(' ', '.') + return title class ProviderProxy: diff --git a/sickbeard/providers/hdbits.py b/sickbeard/providers/hdbits.py index d5822bf8..fa3daa11 100644 --- a/sickbeard/providers/hdbits.py +++ b/sickbeard/providers/hdbits.py @@ -84,8 +84,6 @@ class HDBitsProvider(generic.TorrentProvider): title = item['name'] if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) url = self.urls['download'] + urllib.urlencode({'id': item['id'], 'passkey': self.passkey}) diff --git a/sickbeard/providers/hdtorrents.py b/sickbeard/providers/hdtorrents.py index ffc3d498..f9a20749 100644 --- a/sickbeard/providers/hdtorrents.py +++ b/sickbeard/providers/hdtorrents.py @@ -292,8 +292,6 @@ class HDTorrentsProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/kat.py b/sickbeard/providers/kat.py index 672f6964..763091dd 100644 --- a/sickbeard/providers/kat.py +++ b/sickbeard/providers/kat.py @@ -297,8 +297,6 @@ class KATProvider(generic.TorrentProvider): title, url, id, seeders, leechers, size, pubdate = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/morethantv.py b/sickbeard/providers/morethantv.py index d2db798c..e73f9a48 100755 --- a/sickbeard/providers/morethantv.py +++ b/sickbeard/providers/morethantv.py @@ -265,8 +265,6 @@ class MoreThanTVProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/oldpiratebay.py b/sickbeard/providers/oldpiratebay.py index 49381b2c..d6de1213 100644 --- a/sickbeard/providers/oldpiratebay.py +++ b/sickbeard/providers/oldpiratebay.py @@ -293,7 +293,6 @@ class OldPirateBayProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/rarbg.py b/sickbeard/providers/rarbg.py index 7c281490..e0d938ee 100644 --- a/sickbeard/providers/rarbg.py +++ b/sickbeard/providers/rarbg.py @@ -334,8 +334,6 @@ class RarbgProvider(generic.TorrentProvider): title, url = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/rsstorrent.py b/sickbeard/providers/rsstorrent.py index 8f6910c1..807114e6 100644 --- a/sickbeard/providers/rsstorrent.py +++ b/sickbeard/providers/rsstorrent.py @@ -78,8 +78,6 @@ class TorrentRssProvider(generic.TorrentProvider): title = item.get(self.titleTAG) if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) attempt_list = [lambda: item.get('torrent_magneturi'), diff --git a/sickbeard/providers/scc.py b/sickbeard/providers/scc.py index 3827abf9..5bbc2245 100644 --- a/sickbeard/providers/scc.py +++ b/sickbeard/providers/scc.py @@ -259,8 +259,6 @@ class SCCProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/scenetime.py b/sickbeard/providers/scenetime.py index ff572b3e..35461560 100644 --- a/sickbeard/providers/scenetime.py +++ b/sickbeard/providers/scenetime.py @@ -233,8 +233,6 @@ class SceneTimeProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/speedcd.py b/sickbeard/providers/speedcd.py index 0a83d9aa..9d92114f 100644 --- a/sickbeard/providers/speedcd.py +++ b/sickbeard/providers/speedcd.py @@ -204,8 +204,6 @@ class SpeedCDProvider(generic.TorrentProvider): title, url, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/t411.py b/sickbeard/providers/t411.py index 6c0c7811..e48778a1 100644 --- a/sickbeard/providers/t411.py +++ b/sickbeard/providers/t411.py @@ -214,8 +214,6 @@ class T411Provider(generic.TorrentProvider): title, url = item if title: - title += u'' - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/thepiratebay.py b/sickbeard/providers/thepiratebay.py index 08cbe2fb..24d9aa11 100644 --- a/sickbeard/providers/thepiratebay.py +++ b/sickbeard/providers/thepiratebay.py @@ -282,7 +282,6 @@ class ThePirateBayProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/tntvillage.py b/sickbeard/providers/tntvillage.py index f31b7c21..fa9ddcc4 100644 --- a/sickbeard/providers/tntvillage.py +++ b/sickbeard/providers/tntvillage.py @@ -439,8 +439,6 @@ class TNTVillageProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/tokyotoshokan.py b/sickbeard/providers/tokyotoshokan.py index ba9bbd7f..4d1c3680 100644 --- a/sickbeard/providers/tokyotoshokan.py +++ b/sickbeard/providers/tokyotoshokan.py @@ -147,8 +147,6 @@ class TokyoToshokanCache(tvcache.TVCache): title = item.title if item.title else None if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) url = item.link if item.link else None diff --git a/sickbeard/providers/torrentbytes.py b/sickbeard/providers/torrentbytes.py index e52deb7f..6a6f5a21 100644 --- a/sickbeard/providers/torrentbytes.py +++ b/sickbeard/providers/torrentbytes.py @@ -227,8 +227,6 @@ class TorrentBytesProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/torrentday.py b/sickbeard/providers/torrentday.py index 787d471b..6ba30f50 100644 --- a/sickbeard/providers/torrentday.py +++ b/sickbeard/providers/torrentday.py @@ -236,8 +236,6 @@ class TorrentDayProvider(generic.TorrentProvider): title, url = item[0], item[1] if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: diff --git a/sickbeard/providers/torrentleech.py b/sickbeard/providers/torrentleech.py index a52cbc1e..26c0b778 100644 --- a/sickbeard/providers/torrentleech.py +++ b/sickbeard/providers/torrentleech.py @@ -229,8 +229,6 @@ class TorrentLeechProvider(generic.TorrentProvider): title, url, id, seeders, leechers = item if title: - title = u'' + title - title = title.replace(' ', '.') title = self._clean_title_from_provider(title) if url: -- GitLab