Added 'searcher.get_media_searcher_id' event, Cleaned up some 'status.get' calls, Renamed some references of 'nzb' to 'rel'.
This commit is contained in:
1 parent
0793668e5c
commit
529b535d9f
3 files changed
+14
-16
No files matched your search
@@ -55,7 +55,7 @@ class Searcher(SearcherBase):
|
|||||||
return progress
|
return progress
|
||||||
|
|
||||||
def tryDownloadResult(self, results, media, quality_type, manual = False):
|
def tryDownloadResult(self, results, media, quality_type, manual = False):
|
||||||
available_status, ignored_status, failed_status = fireEvent('status.get', ['available', 'ignored', 'failed'], single = True)
|
ignored_status, failed_status = fireEvent('status.get', ['ignored', 'failed'], single = True)
|
||||||
|
|
||||||
for rel in results:
|
for rel in results:
|
||||||
if not quality_type.get('finish', False) and quality_type.get('wait_for', 0) > 0 and rel.get('age') <= quality_type.get('wait_for', 0):
|
if not quality_type.get('finish', False) and quality_type.get('wait_for', 0) > 0 and rel.get('age') <= quality_type.get('wait_for', 0):
|
||||||
@@ -89,8 +89,7 @@ class Searcher(SearcherBase):
|
|||||||
downloader_enabled = fireEvent('download.enabled', manual, data, single = True)
|
downloader_enabled = fireEvent('download.enabled', manual, data, single = True)
|
||||||
|
|
||||||
if downloader_enabled:
|
if downloader_enabled:
|
||||||
|
snatched_status, active_status, done_status = fireEvent('status.get', ['snatched', 'active', 'done'], single = True)
|
||||||
snatched_status = fireEvent('status.get', 'snatched', single = True)
|
|
||||||
|
|
||||||
# Download release to temp
|
# Download release to temp
|
||||||
filedata = None
|
filedata = None
|
||||||
@@ -110,7 +109,6 @@ class Searcher(SearcherBase):
|
|||||||
if rls:
|
if rls:
|
||||||
renamer_enabled = Env.setting('enabled', 'renamer')
|
renamer_enabled = Env.setting('enabled', 'renamer')
|
||||||
|
|
||||||
done_status = fireEvent('status.get', 'done', single = True)
|
|
||||||
rls.status_id = done_status.get('id') if not renamer_enabled else snatched_status.get('id')
|
rls.status_id = done_status.get('id') if not renamer_enabled else snatched_status.get('id')
|
||||||
|
|
||||||
# Save download-id info if returned
|
# Save download-id info if returned
|
||||||
@@ -130,8 +128,6 @@ class Searcher(SearcherBase):
|
|||||||
|
|
||||||
# If renamer isn't used, mark media done
|
# If renamer isn't used, mark media done
|
||||||
if not renamer_enabled:
|
if not renamer_enabled:
|
||||||
active_status = fireEvent('status.get', 'active', single = True)
|
|
||||||
done_status = fireEvent('status.get', 'done', single = True)
|
|
||||||
try:
|
try:
|
||||||
if media['status_id'] == active_status.get('id'):
|
if media['status_id'] == active_status.get('id'):
|
||||||
for profile_type in media['profile']['types']:
|
for profile_type in media['profile']['types']:
|
||||||
@@ -163,14 +159,10 @@ class Searcher(SearcherBase):
|
|||||||
def search(self, protocols, media, quality):
|
def search(self, protocols, media, quality):
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
search_type = None
|
searcher_id = fireEvent('searcher.get_media_searcher_id', media['type'], single = True)
|
||||||
if media['type'] == 'movie':
|
|
||||||
search_type = 'movie'
|
|
||||||
elif media['type'] in ['show', 'season', 'episode']:
|
|
||||||
search_type = 'show'
|
|
||||||
|
|
||||||
for search_protocol in protocols:
|
for search_protocol in protocols:
|
||||||
protocol_results = fireEvent('provider.search.%s.%s' % (search_protocol, search_type), media, quality, merge = True)
|
protocol_results = fireEvent('provider.search.%s.%s' % (search_protocol, searcher_id), media, quality, merge = True)
|
||||||
if protocol_results:
|
if protocol_results:
|
||||||
results += protocol_results
|
results += protocol_results
|
||||||
|
|
||||||
@@ -191,13 +183,13 @@ class Searcher(SearcherBase):
|
|||||||
|
|
||||||
for rel in search_results:
|
for rel in search_results:
|
||||||
|
|
||||||
nzb_identifier = md5(rel['url'])
|
rel_identifier = md5(rel['url'])
|
||||||
found_releases.append(nzb_identifier)
|
found_releases.append(rel_identifier)
|
||||||
|
|
||||||
rls = db.query(Release).filter_by(identifier = nzb_identifier).first()
|
rls = db.query(Release).filter_by(identifier = rel_identifier).first()
|
||||||
if not rls:
|
if not rls:
|
||||||
rls = Release(
|
rls = Release(
|
||||||
identifier = nzb_identifier,
|
identifier = rel_identifier,
|
||||||
media_id = media.get('id'),
|
media_id = media.get('id'),
|
||||||
quality_id = quality_type.get('quality_id'),
|
quality_id = quality_type.get('quality_id'),
|
||||||
status_id = available_status.get('id')
|
status_id = available_status.get('id')
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ class MovieSearcher(SearcherBase, MovieTypeBase):
|
|||||||
addEvent('movie.searcher.could_be_released', self.couldBeReleased)
|
addEvent('movie.searcher.could_be_released', self.couldBeReleased)
|
||||||
addEvent('searcher.correct_release', self.correctRelease)
|
addEvent('searcher.correct_release', self.correctRelease)
|
||||||
addEvent('searcher.get_search_title', self.getSearchTitle)
|
addEvent('searcher.get_search_title', self.getSearchTitle)
|
||||||
|
addEvent('searcher.get_media_searcher_id', self.getMediaSearcherId)
|
||||||
|
|
||||||
addApiView('movie.searcher.try_next', self.tryNextReleaseView, docs = {
|
addApiView('movie.searcher.try_next', self.tryNextReleaseView, docs = {
|
||||||
'desc': 'Marks the snatched results as ignored and try the next best release',
|
'desc': 'Marks the snatched results as ignored and try the next best release',
|
||||||
@@ -343,5 +344,9 @@ class MovieSearcher(SearcherBase, MovieTypeBase):
|
|||||||
if media['type'] == 'movie':
|
if media['type'] == 'movie':
|
||||||
return getTitle(media['library'])
|
return getTitle(media['library'])
|
||||||
|
|
||||||
|
def getMediaSearcherId(self, media_type):
|
||||||
|
if media_type == 'movie':
|
||||||
|
return 'movie'
|
||||||
|
|
||||||
class SearchSetupError(Exception):
|
class SearchSetupError(Exception):
|
||||||
pass
|
pass
|
||||||
@@ -312,6 +312,7 @@ class ResultList(list):
|
|||||||
|
|
||||||
old_score = new_result['score']
|
old_score = new_result['score']
|
||||||
new_result['score'] = int(old_score * is_correct_weight)
|
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)', (
|
log.info('Found correct release with weight %.02f, old_score(%d) now scaled to score(%d)', (
|
||||||
is_correct_weight,
|
is_correct_weight,
|
||||||
old_score,
|
old_score,
|
||||||
|
|||||||
Reference in new issue
Block a user