'searcher.correct_release' can now return a float indicating the weight/accuracy which is used to scale the score. Fix to IPT _buildUrl method.

This commit is contained in:
Dean Gardiner
2013-10-03 00:59:15 +13:00
parent 2d2b0c9048
commit 8d368ecf29
2 changed files with 13 additions and 3 deletions

View File

@@ -302,12 +302,22 @@ class ResultList(list):
new_result = self.fillResult(result)
is_correct_movie = fireEvent('searcher.correct_release', new_result, self.movie, self.quality,
is_correct = fireEvent('searcher.correct_release', new_result, self.movie, self.quality,
imdb_results = self.kwargs.get('imdb_results', False), single = True)
if is_correct_movie and new_result['id'] not in self.result_ids:
if is_correct and new_result['id'] not in self.result_ids:
is_correct_weight = float(is_correct)
new_result['score'] += fireEvent('score.calculate', new_result, self.movie, single = True)
old_score = new_result['score']
new_result['score'] = int(old_score * is_correct_weight)
log.info('Found correct release with weight %.02f, old_score(%d) now scaled to score(%d)', (
is_correct_weight,
old_score,
new_result['score']
))
self.found(new_result)
self.result_ids.append(result['id'])

View File

@@ -33,7 +33,7 @@ class Base(TorrentProvider):
cat_ids = self.getCatId(quality_identifier, cat_ids_group)
if not len(cat_ids):
if not cat_ids or not len(cat_ids):
log.warning('Unable to find category for quality %s', quality_identifier)
return