* add singular fork detection for multiple runs. Fixes #1637
* Add newly identified fork variants #1630 #1637
* remove encoding of paths. #1637 #1582
This commit is contained in:
Clinton Hall 2019-07-22 12:35:01 +12:00 committed by GitHub
commit 8ba8caf021
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 10 additions and 45 deletions

View file

@ -70,14 +70,6 @@ def process_torrent(input_directory, input_name, input_category, input_hash, inp
input_category = 'UNCAT' input_category = 'UNCAT'
usercat = input_category usercat = input_category
# try:
# input_name = input_name.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
# try:
# input_directory = input_directory.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
logger.debug('Determined Directory: {0} | Name: {1} | Category: {2}'.format logger.debug('Determined Directory: {0} | Name: {1} | Category: {2}'.format
(input_directory, input_name, input_category)) (input_directory, input_name, input_category))
@ -135,10 +127,6 @@ def process_torrent(input_directory, input_name, input_category, input_hash, inp
else: else:
output_destination = os.path.normpath( output_destination = os.path.normpath(
core.os.path.join(core.OUTPUT_DIRECTORY, input_category)) core.os.path.join(core.OUTPUT_DIRECTORY, input_category))
# try:
# output_destination = output_destination.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
if output_destination in input_directory: if output_destination in input_directory:
output_destination = input_directory output_destination = input_directory
@ -180,10 +168,6 @@ def process_torrent(input_directory, input_name, input_category, input_hash, inp
core.os.path.join(output_destination, os.path.basename(file_path)), full_file_name) core.os.path.join(output_destination, os.path.basename(file_path)), full_file_name)
logger.debug('Setting outputDestination to {0} to preserve folder structure'.format logger.debug('Setting outputDestination to {0} to preserve folder structure'.format
(os.path.dirname(target_file))) (os.path.dirname(target_file)))
# try:
# target_file = target_file.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
if root == 1: if root == 1:
if not found_file: if not found_file:
logger.debug('Looking for {0} in: {1}'.format(input_name, inputFile)) logger.debug('Looking for {0} in: {1}'.format(input_name, inputFile))
@ -362,15 +346,7 @@ def main(args):
if client_agent.lower() not in core.TORRENT_CLIENTS: if client_agent.lower() not in core.TORRENT_CLIENTS:
continue continue
# try:
# dir_name = dir_name.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
input_name = os.path.basename(dir_name) input_name = os.path.basename(dir_name)
# try:
# input_name = input_name.encode(core.SYS_ENCODING)
# except UnicodeError:
# pass
results = process_torrent(dir_name, input_name, subsection, input_hash or None, input_id or None, results = process_torrent(dir_name, input_name, subsection, input_hash or None, input_id or None,
client_agent) client_agent)

View file

@ -99,10 +99,12 @@ FORK_FAILED = 'failed'
FORK_FAILED_TORRENT = 'failed-torrent' FORK_FAILED_TORRENT = 'failed-torrent'
FORK_SICKRAGE = 'SickRage' FORK_SICKRAGE = 'SickRage'
FORK_SICKCHILL = 'SickChill' FORK_SICKCHILL = 'SickChill'
FORK_SICKCHILL_API = 'SickChill-api'
FORK_SICKBEARD_API = 'SickBeard-api' FORK_SICKBEARD_API = 'SickBeard-api'
FORK_MEDUSA = 'Medusa' FORK_MEDUSA = 'Medusa'
FORK_MEDUSA_API = 'Medusa-api' FORK_MEDUSA_API = 'Medusa-api'
FORK_SICKGEAR = 'SickGear' FORK_SICKGEAR = 'SickGear'
FORK_SICKGEAR_API = 'SickGear-api'
FORK_STHENO = 'Stheno' FORK_STHENO = 'Stheno'
FORKS = { FORKS = {
@ -111,10 +113,12 @@ FORKS = {
FORK_FAILED_TORRENT: {'dir': None, 'failed': None, 'process_method': None}, FORK_FAILED_TORRENT: {'dir': None, 'failed': None, 'process_method': None},
FORK_SICKRAGE: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None}, FORK_SICKRAGE: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None},
FORK_SICKCHILL: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'force_next': None}, FORK_SICKCHILL: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'force_next': None},
FORK_SICKCHILL_API: {'path': None, 'failed': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'delete': None, 'force_next': None, 'is_priority': None},
FORK_SICKBEARD_API: {'path': None, 'failed': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'delete': None, 'force_next': None}, FORK_SICKBEARD_API: {'path': None, 'failed': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'delete': None, 'force_next': None},
FORK_MEDUSA: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'ignore_subs': None}, FORK_MEDUSA: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'ignore_subs': None},
FORK_MEDUSA_API: {'path': None, 'failed': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'delete_files': None, 'is_priority': None}, FORK_MEDUSA_API: {'path': None, 'failed': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'delete_files': None, 'is_priority': None},
FORK_SICKGEAR: {'dir': None, 'failed': None, 'process_method': None, 'force': None}, FORK_SICKGEAR: {'dir': None, 'failed': None, 'process_method': None, 'force': None},
FORK_SICKGEAR_API: {'path': None, 'process_method': None, 'force_replace': None, 'return_data': None, 'type': None, 'is priority': None},
FORK_STHENO: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'ignore_subs': None}, FORK_STHENO: {'proc_dir': None, 'failed': None, 'process_method': None, 'force': None, 'delete_on': None, 'ignore_subs': None},
} }
ALL_FORKS = {k: None for k in set(list(itertools.chain.from_iterable([FORKS[x].keys() for x in FORKS.keys()])))} ALL_FORKS = {k: None for k in set(list(itertools.chain.from_iterable([FORKS[x].keys() for x in FORKS.keys()])))}
@ -198,6 +202,7 @@ META_CONTAINER = []
SECTIONS = [] SECTIONS = []
CATEGORIES = [] CATEGORIES = []
FORK_SET = []
MOUNTED = None MOUNTED = None
GETSUBS = False GETSUBS = False

View file

@ -45,6 +45,10 @@ def api_check(r, params, rem_params):
def auto_fork(section, input_category): def auto_fork(section, input_category):
# auto-detect correct section # auto-detect correct section
# config settings # config settings
if core.FORK_SET: # keep using determined fork for multiple (manual) post-processing
logger.info('{section}:{category} fork already set to {fork}'.format
(section=section, category=input_category, fork=core.FORK_SET[0]))
return core.FORK_SET[0], core.FORK_SET[1]
cfg = dict(core.CFG[section][input_category]) cfg = dict(core.CFG[section][input_category])
@ -168,4 +172,5 @@ def auto_fork(section, input_category):
logger.info('{section}:{category} fork set to {fork}'.format logger.info('{section}:{category} fork set to {fork}'.format
(section=section, category=input_category, fork=fork[0])) (section=section, category=input_category, fork=fork[0]))
core.FORK_SET = fork
return fork[0], fork[1] return fork[0], fork[1]

View file

@ -96,15 +96,6 @@ def find_imdbid(dir_name, input_name, omdb_api_key):
def category_search(input_directory, input_name, input_category, root, categories): def category_search(input_directory, input_name, input_category, root, categories):
tordir = False tordir = False
# try:
# input_name = input_name.encode(core.SYS_ENCODING)
# except Exception:
# pass
# try:
# input_directory = input_directory.encode(core.SYS_ENCODING)
# except Exception:
# pass
if input_directory is None: # =Nothing to process here. if input_directory is None: # =Nothing to process here.
return input_directory, input_name, input_category, root return input_directory, input_name, input_category, root

View file

@ -26,10 +26,6 @@ def sanitize_name(name):
# remove leading/trailing periods and spaces # remove leading/trailing periods and spaces
name = name.strip(' .') name = name.strip(' .')
# try:
# name = name.encode(core.SYS_ENCODING)
# except Exception:
# pass
return name return name

View file

@ -973,15 +973,7 @@ def main(args, section=None):
if client_agent and client_agent.lower() not in core.NZB_CLIENTS: if client_agent and client_agent.lower() not in core.NZB_CLIENTS:
continue continue
try:
dir_name = dir_name.encode(core.SYS_ENCODING)
except UnicodeError:
pass
input_name = os.path.basename(dir_name) input_name = os.path.basename(dir_name)
try:
input_name = input_name.encode(core.SYS_ENCODING)
except UnicodeError:
pass
results = process(dir_name, input_name, 0, client_agent=client_agent, results = process(dir_name, input_name, 0, client_agent=client_agent,
download_id=download_id or None, input_category=subsection) download_id=download_id or None, input_category=subsection)