def _get_episode_search_strings(self, ep_obj, add_string=''): search_string = {'Episode': []} if not ep_obj: return [] for show_name in set(allPossibleShowNames(ep_obj.show)): ep_string = show_name + ' ' if ep_obj.show.air_by_date: ep_string += str(ep_obj.airdate).replace('-', ' ') elif ep_obj.show.sports: ep_string += str(ep_obj.airdate).replace('-', ' ') + ('|', ' ')[ len(self.proper_strings) > 1] + ep_obj.airdate.strftime('%b') elif ep_obj.show.anime: ep_string += "%02d" % int(ep_obj.scene_absolute_number) else: ep_string += sickrage.srCore.srConfig.NAMING_EP_TYPE[2] % {'seasonnumber': ep_obj.scene_season, 'episodenumber': ep_obj.scene_episode} if add_string: ep_string = ep_string + ' %s' % add_string search_string['Episode'].append(ep_string.strip()) return [search_string]
def _get_episode_search_strings(self, episode, add_string=''): search_string = {'Episode': []} if not episode: return [] for show_name in set(show_names.allPossibleShowNames(episode.show)): for sep in ' ', ' - ': ep_string = sanitizeSceneName(show_name) + sep if episode.show.air_by_date: ep_string += str(episode.airdate) elif episode.show.sports: ep_string += str(episode.airdate) + '|' + episode.airdate.strftime('%b') elif episode.show.anime: ep_string += '%i' % int(episode.scene_absolute_number) else: ep_string += sickrage.app.naming_ep_type[4] % {'seasonnumber': episode.scene_season, 'episodenumber': episode.scene_episode} if add_string: ep_string += ' %s' % add_string search_string['Episode'].append(re.sub(r'\s+', ' ', ep_string.replace('.', ' ').strip())) return [search_string]
def _test_allPossibleShowNames(self, name, indexerid=0, expected=[]): s = TVShow(1, indexerid) s.name = name result = show_names.allPossibleShowNames(s) self.assertTrue( len(set(expected).intersection(set(result))) == len(expected))
def _get_episode_search_strings(self, episode, add_string=''): search_string = {'Episode': []} if not episode: return [] for show_name in set(show_names.allPossibleShowNames(episode.show)): for sep in ' ', ' - ': ep_string = sanitizeSceneName(show_name) + sep if episode.show.air_by_date: ep_string += str(episode.airdate) elif episode.show.sports: ep_string += str( episode.airdate) + '|' + episode.airdate.strftime('%b') elif episode.show.anime: ep_string += '%i' % int(episode.scene_absolute_number) else: ep_string += sickrage.app.naming_ep_type[4] % { 'seasonnumber': episode.scene_season, 'episodenumber': episode.scene_episode } if add_string: ep_string += ' %s' % add_string search_string['Episode'].append( re.sub(r'\s+', ' ', ep_string.replace('.', ' ').strip())) return [search_string]
def _test_allPossibleShowNames(self, name, indexerid=0, expected=[]): s = TVShow(1, indexerid) s.name = name s.saveToDB() s.loadFromDB(skipNFO=True) result = show_names.allPossibleShowNames(s) self.assertTrue( len(set(expected).intersection(set(result))) == len(expected))
def _retrieve_show_images_from_tmdb(show, img_type): types = { 'poster': 'poster_path', 'banner': None, 'fanart': 'backdrop_path', 'poster_thumb': 'poster_path', 'banner_thumb': None } def _request(self, method, path, params=None, payload=None): url = self._get_complete_url(path) params = self._get_params(params) requests.packages.urllib3.disable_warnings() response = requests.request( method, url, params=params, data=json.dumps(payload) if payload else payload, verify=False) #response.raise_for_status() response.encoding = 'utf-8' return response.json() from tmdbsimple.base import TMDB TMDB._request = _request # get TMDB configuration info tmdb.API_KEY = sickrage.srCore.srConfig.TMDB_API_KEY response = tmdb.Configuration().info() base_url = response['images']['base_url'] sizes = response['images']['poster_sizes'] def size_str_to_int(x): return float("inf") if x == 'original' else int(x[1:]) max_size = max(sizes, key=size_str_to_int) sickrage.srCore.srLogger.debug("Searching for any " + img_type + " images on TMDB for " + show.name) try: search = tmdb.Search() from sickrage.core.helpers.show_names import allPossibleShowNames for show_name in set(allPossibleShowNames(show)): for result in search.collection( query=show_name)['results'] + search.tv( query=show_name)['results']: if types[img_type] and getattr(result, types[img_type]): return "{0}{1}{2}".format(base_url, max_size, result[types[img_type]]) except: pass sickrage.srCore.srLogger.debug("Could not find any " + img_type + " images on TMDB for " + show.name)
def _test_allPossibleShowNames(self, name, indexerid=0, expected=[]): s = TVShow(1, indexerid) s.name = name s.saveToDB() s.loadFromDB(skipNFO=True) result = show_names.allPossibleShowNames(s) self.assertTrue(len(set(expected).intersection(set(result))) == len(expected))
def _test_allPossibleShowNames(self, name, indexerid=0, expected=None): if expected is None: expected = [] s = TVShow(1, indexerid) s.name = name s.saveToDB() result = show_names.allPossibleShowNames(s) self.assertTrue(len(set(expected).intersection(set(result))) == len(expected))
def _test_allPossibleShowNames(self, name, indexerid=0, expected=None): if expected is None: expected = [] s = TVShow(1, indexerid) s.name = name s.save_to_db() result = show_names.allPossibleShowNames(s) self.assertTrue(len(set(expected).intersection(set(result))) == len(expected))
def _get_season_search_strings(self, ep_obj): search_string = {'Season': []} for show_name in set(allPossibleShowNames(self.show)): if ep_obj.show.air_by_date or ep_obj.show.sports: ep_string = show_name + ' ' + str(ep_obj.airdate).split('-')[0] elif ep_obj.show.anime: ep_string = show_name + ' ' + "%d" % ep_obj.scene_absolute_number else: ep_string = show_name + ' S%02d' % int(ep_obj.scene_season) # 1) showName.SXX search_string['Season'].append(ep_string.encode('utf-8').strip()) return [search_string]
def _get_season_search_strings(self, episode): search_string = {'Season': []} for show_name in set(show_names.allPossibleShowNames(episode.show)): for sep in ' ', ' - ': season_string = show_name + sep + 'Series ' if episode.show.air_by_date or episode.show.sports: season_string += str(episode.airdate).split('-')[0] elif episode.show.anime: season_string += '%d' % episode.scene_absolute_number else: season_string += '%d' % int(episode.scene_season) search_string['Season'].append(re.sub(r'\s+', ' ', season_string.replace('.', ' ').strip())) return [search_string]
def _retrieve_show_images_from_tmdb(show, img_type): types = {'poster': 'poster_path', 'banner': None, 'fanart': 'backdrop_path', 'poster_thumb': 'poster_path', 'banner_thumb': None} def _request(self, method, path, params=None, payload=None): url = self._get_complete_url(path) params = self._get_params(params) requests.packages.urllib3.disable_warnings() response = requests.request(method, url, params=params, data=json.dumps(payload) if payload else payload, verify=False) #response.raise_for_status() response.encoding = 'utf-8' return response.json() from tmdbsimple.base import TMDB TMDB._request = _request # get TMDB configuration info tmdb.API_KEY = sickrage.srCore.srConfig.TMDB_API_KEY response = tmdb.Configuration().info() base_url = response['images']['base_url'] sizes = response['images']['poster_sizes'] def size_str_to_int(x): return float("inf") if x == 'original' else int(x[1:]) max_size = max(sizes, key=size_str_to_int) sickrage.srCore.srLogger.debug("Searching for any " + img_type + " images on TMDB for " + show.name) try: search = tmdb.Search() from sickrage.core.helpers.show_names import allPossibleShowNames for show_name in set(allPossibleShowNames(show)): for result in search.collection(query=show_name)['results'] + search.tv(query=show_name)['results']: if types[img_type] and getattr(result, types[img_type]): return "{0}{1}{2}".format(base_url, max_size, result[types[img_type]]) except: pass sickrage.srCore.srLogger.debug("Could not find any " + img_type + " images on TMDB for " + show.name)
def _get_season_search_strings(self, episode): """ Get season search strings. """ search_strings = { 'Season': [] } season_strings = ['%s/capitulo-%s%s/', '%s/capitulo-%s%s/hdtv/', '%s/capitulo-%s%s/hdtv-720p-ac3-5-1/', '%s/capitulo-%s%s/hdtv-1080p-ac3-5-1/', '%s/capitulo-%s%s/bluray-1080p/'] for show_name in allPossibleShowNames(episode.show, episode.scene_season): for season_string in season_strings: season_string = season_string % (show_name.replace(' ', '-'), episode.season, episode.episode) search_strings['Season'].append(season_string.strip()) return [search_strings]
def _get_season_search_strings(self, episode): """ Get season search strings. """ search_strings = {'Season': []} season_strings = [ '%s/capitulo-%s%s/', '%s/capitulo-%s%s/hdtv/', '%s/capitulo-%s%s/hdtv-720p-ac3-5-1/', '%s/capitulo-%s%s/hdtv-1080p-ac3-5-1/', '%s/capitulo-%s%s/bluray-1080p/' ] for show_name in allPossibleShowNames(episode.show, episode.scene_season): for season_string in season_strings: season_string = season_string % (show_name.replace( ' ', '-'), episode.scene_season, episode.scene_episode) search_strings['Season'].append(season_string.strip()) return [search_strings]
def _get_episode_search_strings(self, episode, add_string=''): """ Get episode search strings. """ if not episode: return [] search_strings = { 'Episode': [] } episode_strings = ['%s/capitulo-%s%s/', '%s/capitulo-%s%s/hdtv/', '%s/capitulo-%s%s/hdtv-720p-ac3-5-1/', '%s/capitulo-%s%s/hdtv-1080p-ac3-5-1/', '%s/capitulo-%s%s/bluray-1080p/'] for show_name in allPossibleShowNames(episode.show, episode.scene_season): for episode_string in episode_strings: episode_string = episode_string % (show_name.replace(' ', '-'), episode.season, episode.episode) search_strings['Episode'].append(episode_string.strip()) return [search_strings]
def _get_episode_search_strings(self, episode, add_string=''): """ Get episode search strings. """ if not episode: return [] search_strings = {'Episode': []} episode_strings = [ '%s/capitulo-%s%s/', '%s/capitulo-%s%s/hdtv/', '%s/capitulo-%s%s/hdtv-720p-ac3-5-1/', '%s/capitulo-%s%s/hdtv-1080p-ac3-5-1/', '%s/capitulo-%s%s/bluray-1080p/' ] for show_name in allPossibleShowNames(episode.show, episode.scene_season): for episode_string in episode_strings: episode_string = episode_string % (show_name.replace( ' ', '-'), episode.scene_season, episode.scene_episode) search_strings['Episode'].append(episode_string.strip()) return [search_strings]
def _test_allPossibleShowNames(self, name, indexerid=0, expected=[]): s = TVShow(1, indexerid) s.name = name result = show_names.allPossibleShowNames(s) self.assertTrue(len(set(expected).intersection(set(result))) == len(expected))