diff --git a/sickbeard/dailysearcher.py b/sickbeard/dailysearcher.py index f45cf291..97470c17 100644 --- a/sickbeard/dailysearcher.py +++ b/sickbeard/dailysearcher.py @@ -27,6 +27,8 @@ from sickbeard import db from sickbeard import common from sickbeard import helpers from sickbeard import exceptions +from sickbeard.exceptions import ex + class DailySearcher(): def __init__(self): @@ -38,6 +40,23 @@ class DailySearcher(): self.amActive = True + providers = [x for x in sickbeard.providers.sortedProviderList() if x.isActive() and not x.backlog_only] + for curProviderCount, curProvider in enumerate(providers): + + try: + logger.log(u"Updating [" + curProvider.name + "} RSS cache ...") + curProvider.cache.updateCache() + except exceptions.AuthException, e: + logger.log(u"Authentication error: " + ex(e), logger.ERROR) + if curProviderCount != len(providers): + continue + break + except Exception, e: + logger.log(u"Error while updating cache for " + curProvider.name + ", skipping: " + ex(e), logger.ERROR) + if curProviderCount != len(providers): + continue + break + logger.log(u"Searching for coming episodes and 1 weeks worth of previously WANTED episodes ...") fromDate = datetime.date.today() - datetime.timedelta(weeks=1) diff --git a/sickbeard/db.py b/sickbeard/db.py index cb2ecada..1f51c42a 100644 --- a/sickbeard/db.py +++ b/sickbeard/db.py @@ -130,12 +130,8 @@ class DBConnection(object): sqlResult = [] attempt = 0 - # Transaction - #self.execute('BEGIN') - while attempt < 5: try: - for qu in querylist: if len(qu) == 1: if logTransaction: diff --git a/sickbeard/name_parser/parser.py b/sickbeard/name_parser/parser.py index a8bedb87..bf57c84a 100644 --- a/sickbeard/name_parser/parser.py +++ b/sickbeard/name_parser/parser.py @@ -249,7 +249,7 @@ class NameParser(object): matches.append(result) if len(matches): - result = max(matches, key=lambda x: x.score) + result = max(sorted(matches, reverse=True, key=lambda x: x.which_regex), key=lambda x: x.score) if result.show: if self.convert and not self.naming_pattern: diff --git a/sickbeard/name_parser/regexes.py b/sickbeard/name_parser/regexes.py index 62b16bc4..b0b18c8d 100644 --- a/sickbeard/name_parser/regexes.py +++ b/sickbeard/name_parser/regexes.py @@ -76,7 +76,7 @@ normal_regexes = {'normal':[ (?P\d+) # 02 and separator (([. _-]*x|-) # linking x/- char (?P - (?!(1080|720|480)[pi])(?!(?<=x)264) # ignore obviously wrong multi-eps + (?!(1080|720|480)[pi])(?!(?<=[hx])264) # ignore obviously wrong multi-eps \d+))* # additional x03/etc [\]. _-]*((?P.+?) # Source_Quality_Etc- ((?