def query(self, video): vfn = get_video_filename(video) logger.debug(u"Searching for: %s", vfn) film = search(vfn, session=self.session) subtitles = [] if film and film.subtitles: subtitles = self.parse_results(video, film) # re-search for episodes without explicit release name if isinstance(video, Episode): term = u"%s S%02iE%02i" % (video.series, video.season, video.episode) time.sleep(self.search_throttle) logger.debug('Searching for alternative results: %s', term) film = search(term, session=self.session) if film and film.subtitles: subtitles += self.parse_results(video, film) # packs if video.season_fully_aired: term = u"%s S%02i" % (video.series, video.season) logger.debug('Searching for packs: %s', term) time.sleep(self.search_throttle) film = search(term, session=self.session) if film and film.subtitles: subtitles += self.parse_results(video, film) else: logger.debug( "Not searching for packs, because the season hasn't fully aired" ) logger.info("%s subtitles found" % len(subtitles)) return subtitles
def query(self, video): #vfn = get_video_filename(video) subtitles = [] #logger.debug(u"Searching for: %s", vfn) # film = search(vfn, session=self.session) # # if film and film.subtitles: # logger.debug('Release results found: %s', len(film.subtitles)) # subtitles = self.parse_results(video, film) # else: # logger.debug('No release results found') #time.sleep(self.search_throttle) # re-search for episodes without explicit release name if isinstance(video, Episode): #term = u"%s S%02iE%02i" % (video.series, video.season, video.episode) more_than_one = len([video.series] + video.alternative_series) > 1 for series in [video.series] + video.alternative_series: term = u"%s - %s Season" % (series, p.number_to_words("%sth" % video.season).capitalize()) logger.debug('Searching for alternative results: %s', term) film = search(term, session=self.session, release=False, throttle=self.search_throttle) if film and film.subtitles: logger.debug('Alternative results found: %s', len(film.subtitles)) subtitles += self.parse_results(video, film) else: logger.debug('No alternative results found') # packs # if video.season_fully_aired: # term = u"%s S%02i" % (series, video.season) # logger.debug('Searching for packs: %s', term) # time.sleep(self.search_throttle) # film = search(term, session=self.session, throttle=self.search_throttle) # if film and film.subtitles: # logger.debug('Pack results found: %s', len(film.subtitles)) # subtitles += self.parse_results(video, film) # else: # logger.debug('No pack results found') # else: # logger.debug("Not searching for packs, because the season hasn't fully aired") if more_than_one: time.sleep(self.search_throttle) else: more_than_one = len([video.title] + video.alternative_titles) > 1 for title in [video.title] + video.alternative_titles: logger.debug('Searching for movie results: %s', title) film = search(title, year=video.year, session=self.session, limit_to=None, release=False, throttle=self.search_throttle) if film and film.subtitles: subtitles += self.parse_results(video, film) if more_than_one: time.sleep(self.search_throttle) logger.info("%s subtitles found" % len(subtitles)) return subtitles
def query(self, video): vfn = get_video_filename(video) subtitles = [] logger.debug(u"Searching for: %s", vfn) film = search(vfn, session=self.session) if film and film.subtitles: logger.debug('Release results found: %s', len(film.subtitles)) subtitles = self.parse_results(video, film) else: logger.debug('No release results found') # re-search for episodes without explicit release name if isinstance(video, Episode): #term = u"%s S%02iE%02i" % (video.series, video.season, video.episode) term = u"%s - %s Season" % (video.series, p.number_to_words("%sth" % video.season).capitalize()) time.sleep(self.search_throttle) logger.debug('Searching for alternative results: %s', term) film = search(term, session=self.session, release=False) if film and film.subtitles: logger.debug('Alternative results found: %s', len(film.subtitles)) subtitles += self.parse_results(video, film) else: logger.debug('No alternative results found') # packs if video.season_fully_aired: term = u"%s S%02i" % (video.series, video.season) logger.debug('Searching for packs: %s', term) time.sleep(self.search_throttle) film = search(term, session=self.session) if film and film.subtitles: logger.debug('Pack results found: %s', len(film.subtitles)) subtitles += self.parse_results(video, film) else: logger.debug('No pack results found') else: logger.debug("Not searching for packs, because the season hasn't fully aired") else: logger.debug('Searching for movie results: %s', video.title) film = search(video.title, year=video.year, session=self.session, limit_to=None, release=False) if film and film.subtitles: subtitles += self.parse_results(video, film) logger.info("%s subtitles found" % len(subtitles)) return subtitles
def do_search(self, *args, **kwargs): try: return search(*args, **kwargs) except requests.HTTPError: region.delete("subscene_cookies2")