Merge pull request #1946 from clinton-hall/pier-1

Order imports and reduce nesting
This commit is contained in:
Labrys of Knossos 2022-12-16 01:23:47 -05:00 committed by GitHub
commit 7ce78de836
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 80 additions and 173 deletions

View file

@ -43,37 +43,37 @@ CONFIG_TV_FILE = APP_ROOT / 'autoProcessTv.cfg'
TEST_FILE = APP_ROOT / 'tests' / 'test.mp4' TEST_FILE = APP_ROOT / 'tests' / 'test.mp4'
MYAPP = None MYAPP = None
from nzb2media import logger, main_db, version_check, databases, transcoder from nzb2media import logger
from nzb2media import main_db
from nzb2media import version_check
from nzb2media import databases
from nzb2media import transcoder
from nzb2media.configuration import config from nzb2media.configuration import config
from nzb2media.plugins.downloaders.configuration import ( from nzb2media.nzb.configuration import configure_nzbs
configure_nzbs,
configure_torrents,
configure_torrent_class,
)
from nzb2media.plugins.downloaders.utils import (
pause_torrent,
remove_torrent,
resume_torrent,
)
from nzb2media.plugins.plex import configure_plex from nzb2media.plugins.plex import configure_plex
from nzb2media.utils.processes import RunningProcess from nzb2media.torrent.configuration import configure_torrent_class
from nzb2media.utils.processes import restart from nzb2media.torrent.configuration import configure_torrents
from nzb2media.utils.files import copy_link
from nzb2media.utils.files import extract_files
from nzb2media.utils.files import list_media_files
from nzb2media.utils.files import make_dir
from nzb2media.utils.files import sanitize_name
from nzb2media.utils.paths import rchmod
from nzb2media.utils.paths import remove_dir
from nzb2media.utils.paths import remove_read_only
from nzb2media.utils.common import clean_dir from nzb2media.utils.common import clean_dir
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.common import get_dirs from nzb2media.utils.common import get_dirs
from nzb2media.utils.download_info import get_download_info from nzb2media.utils.download_info import get_download_info
from nzb2media.utils.download_info import update_download_info_status from nzb2media.utils.download_info import update_download_info_status
from nzb2media.utils.parsers import parse_args from nzb2media.utils.files import copy_link
from nzb2media.utils.network import wake_up from nzb2media.utils.files import extract_files
from nzb2media.utils.files import list_media_files
from nzb2media.utils.files import make_dir
from nzb2media.utils.files import sanitize_name
from nzb2media.utils.identification import category_search from nzb2media.utils.identification import category_search
from nzb2media.utils.network import wake_up
from nzb2media.utils.parsers import parse_args
from nzb2media.utils.paths import rchmod
from nzb2media.utils.paths import remove_dir
from nzb2media.utils.paths import remove_read_only
from nzb2media.utils.processes import RunningProcess
from nzb2media.utils.processes import restart
from nzb2media.utils.torrent import pause_torrent
from nzb2media.utils.torrent import remove_torrent
from nzb2media.utils.torrent import resume_torrent
__version__ = '12.1.11' __version__ = '12.1.11'

View file

@ -1,35 +1,14 @@
from __future__ import annotations from __future__ import annotations
import copy
import errno
import json
import os
import shutil
import time
import requests import requests
from oauthlib.oauth2 import LegacyApplicationClient
from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder
from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import InitSickBeard
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.files import list_media_files from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding from nzb2media.utils.network import server_responding
from nzb2media.utils.paths import remote_dir
def process( def process(

View file

@ -1,35 +1,16 @@
from __future__ import annotations from __future__ import annotations
import copy
import errno
import json
import os import os
import shutil
import time
import requests import requests
from oauthlib.oauth2 import LegacyApplicationClient
from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder
from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import InitSickBeard
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.files import list_media_files from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding from nzb2media.utils.network import server_responding
from nzb2media.utils.paths import remote_dir
def process( def process(

View file

@ -1,34 +1,15 @@
from __future__ import annotations from __future__ import annotations
import copy
import errno
import json
import os import os
import shutil import shutil
import time
import requests import requests
from oauthlib.oauth2 import LegacyApplicationClient
from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder
from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import InitSickBeard
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.files import list_media_files from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding from nzb2media.utils.network import server_responding

View file

@ -1,35 +1,29 @@
from __future__ import annotations from __future__ import annotations
import copy
import errno
import json import json
import os import os
import shutil
import time import time
import requests import requests
from oauthlib.oauth2 import LegacyApplicationClient
from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder from nzb2media import transcoder
from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.common import command_complete from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import InitSickBeard
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.files import list_media_files from nzb2media.utils.files import list_media_files
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.network import find_download
from nzb2media.utils.network import server_responding
from nzb2media.utils.nzb import report_nzb
from nzb2media.utils.paths import remote_dir from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding
def process( def process(

View file

@ -1,35 +1,22 @@
from __future__ import annotations from __future__ import annotations
import copy
import errno
import json import json
import os import os
import shutil
import time import time
import requests import requests
from oauthlib.oauth2 import LegacyApplicationClient
from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder
from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import InitSickBeard from nzb2media.auto_process.common import command_complete
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.files import list_media_files from nzb2media.utils.files import list_media_files
from nzb2media.utils.network import server_responding
from nzb2media.utils.paths import remote_dir from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding
def process( def process(

View file

@ -4,7 +4,6 @@ import copy
import errno import errno
import json import json
import os import os
import shutil
import time import time
import requests import requests
@ -14,22 +13,20 @@ from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media import transcoder from nzb2media import transcoder
from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.common import command_complete from nzb2media.auto_process.common import command_complete
from nzb2media.auto_process.common import completed_download_handling from nzb2media.auto_process.common import completed_download_handling
from nzb2media.auto_process.common import ProcessResult from nzb2media.managers.sickbeard import InitSickBeard
from nzb2media.auto_process.managers.sickbeard import InitSickBeard
from nzb2media.plugins.downloaders.nzb.utils import report_nzb
from nzb2media.plugins.subtitles import import_subs from nzb2media.plugins.subtitles import import_subs
from nzb2media.plugins.subtitles import rename_subs from nzb2media.plugins.subtitles import rename_subs
from nzb2media.scene_exceptions import process_all_exceptions from nzb2media.scene_exceptions import process_all_exceptions
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.network import find_download
from nzb2media.utils.identification import find_imdbid
from nzb2media.utils.common import flatten from nzb2media.utils.common import flatten
from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.files import list_media_files from nzb2media.utils.files import list_media_files
from nzb2media.utils.network import server_responding
from nzb2media.utils.nzb import report_nzb
from nzb2media.utils.paths import remote_dir from nzb2media.utils.paths import remote_dir
from nzb2media.utils.paths import remove_dir from nzb2media.utils.paths import remove_dir
from nzb2media.utils.network import server_responding
def process( def process(

View file

@ -7,7 +7,7 @@ import requests
import nzb2media.utils.common import nzb2media.utils.common
from nzb2media import logger from nzb2media import logger
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.auto_process.managers.sickbeard import SickBeard from nzb2media.managers.sickbeard import SickBeard
class PyMedusa(SickBeard): class PyMedusa(SickBeard):

View file

@ -8,9 +8,7 @@ from requests_oauthlib import OAuth2Session
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media.auto_process.common import ( from nzb2media.auto_process.common import ProcessResult
ProcessResult,
)
from nzb2media.utils.paths import remote_dir from nzb2media.utils.paths import remote_dir

View file

@ -1,7 +0,0 @@
from __future__ import annotations
from nzb2media.plugins.downloaders.nzb.configuration import configure_nzbs
from nzb2media.plugins.downloaders.torrent.configuration import (
configure_torrent_class,
)
from nzb2media.plugins.downloaders.torrent.configuration import configure_torrents

View file

@ -1,5 +0,0 @@
from __future__ import annotations
from nzb2media.plugins.downloaders.torrent.utils import pause_torrent
from nzb2media.plugins.downloaders.torrent.utils import remove_torrent
from nzb2media.plugins.downloaders.torrent.utils import resume_torrent

View file

@ -12,14 +12,14 @@ from nzb2media.auto_process import movies
from nzb2media.auto_process import music from nzb2media.auto_process import music
from nzb2media.auto_process import tv from nzb2media.auto_process import tv
from nzb2media.auto_process.common import ProcessResult from nzb2media.auto_process.common import ProcessResult
from nzb2media.plugins.downloaders.nzb.utils import get_nzoid
from nzb2media.plugins.plex import plex_update from nzb2media.plugins.plex import plex_update
from nzb2media.user_scripts import external_script from nzb2media.user_scripts import external_script
from nzb2media.utils.encoding import char_replace
from nzb2media.utils.common import clean_dir from nzb2media.utils.common import clean_dir
from nzb2media.utils.download_info import update_download_info_status
from nzb2media.utils.encoding import char_replace
from nzb2media.utils.encoding import convert_to_ascii from nzb2media.utils.encoding import convert_to_ascii
from nzb2media.utils.files import extract_files from nzb2media.utils.files import extract_files
from nzb2media.utils.download_info import update_download_info_status from nzb2media.utils.nzb import get_nzoid
def process( def process(

View file

@ -1,7 +1,7 @@
from __future__ import annotations from __future__ import annotations
import nzb2media import nzb2media
from nzb2media.plugins.downloaders.torrent.utils import create_torrent_class from nzb2media.utils.torrent import create_torrent_class
def configure_torrents(config): def configure_torrents(config):

View file

@ -5,10 +5,10 @@ from subprocess import Popen
import nzb2media import nzb2media
from nzb2media import logger, transcoder from nzb2media import logger, transcoder
from nzb2media.auto_process.common import ProcessResult
from nzb2media.plugins.subtitles import import_subs from nzb2media.plugins.subtitles import import_subs
from nzb2media.utils.files import list_media_files from nzb2media.utils.files import list_media_files
from nzb2media.utils.paths import remove_dir from nzb2media.utils.paths import remove_dir
from nzb2media.auto_process.common import ProcessResult
def external_script(output_destination, torrent_name, torrent_label, settings): def external_script(output_destination, torrent_name, torrent_label, settings):

View file

@ -1,7 +1,6 @@
from __future__ import annotations from __future__ import annotations
import os.path import os.path
import typing
import urllib.parse import urllib.parse
import nzb2media import nzb2media

View file

@ -6,8 +6,8 @@ import shutil
import stat import stat
import time import time
import beets.mediafile
import guessit import guessit
import mediafile
import nzb2media import nzb2media
from nzb2media import extractor from nzb2media import extractor
@ -19,15 +19,15 @@ from nzb2media.utils.paths import get_dir_size
from nzb2media.utils.paths import make_dir from nzb2media.utils.paths import make_dir
def move_file(mediafile, path, link): def move_file(filename, path, link):
logger.debug( logger.debug(
f'Found file {os.path.split(mediafile)[1]} in root directory {path}.', f'Found file {os.path.split(filename)[1]} in root directory {path}.',
) )
new_path = None new_path = None
file_ext = os.path.splitext(mediafile)[1] file_ext = os.path.splitext(filename)[1]
try: try:
if file_ext in nzb2media.AUDIO_CONTAINER: if file_ext in nzb2media.AUDIO_CONTAINER:
f = beets.mediafile.MediaFile(mediafile) f = mediafile.MediaFile(filename)
# get artist and album info # get artist and album info
artist = f.artist artist = f.artist
@ -38,22 +38,22 @@ def move_file(mediafile, path, link):
path, f'{sanitize_name(artist)} - {sanitize_name(album)}', path, f'{sanitize_name(artist)} - {sanitize_name(album)}',
) )
elif file_ext in nzb2media.MEDIA_CONTAINER: elif file_ext in nzb2media.MEDIA_CONTAINER:
f = guessit.guessit(mediafile) f = guessit.guessit(filename)
# get title # get title
title = f.get('series') or f.get('title') title = f.get('series') or f.get('title')
if not title: if not title:
title = os.path.splitext(os.path.basename(mediafile))[0] title = os.path.splitext(os.path.basename(filename))[0]
new_path = os.path.join(path, sanitize_name(title)) new_path = os.path.join(path, sanitize_name(title))
except Exception as e: except Exception as e:
logger.error( logger.error(
f'Exception parsing name for media file: {os.path.split(mediafile)[1]}: {e}', f'Exception parsing name for media file: {os.path.split(filename)[1]}: {e}',
) )
if not new_path: if not new_path:
title = os.path.splitext(os.path.basename(mediafile))[0] title = os.path.splitext(os.path.basename(filename))[0]
new_path = os.path.join(path, sanitize_name(title)) new_path = os.path.join(path, sanitize_name(title))
# # Removed as encoding of directory no-longer required # # Removed as encoding of directory no-longer required
@ -75,7 +75,7 @@ def move_file(mediafile, path, link):
make_dir(new_path) make_dir(new_path)
newfile = os.path.join( newfile = os.path.join(
new_path, sanitize_name(os.path.split(mediafile)[1]), new_path, sanitize_name(os.path.split(filename)[1]),
) )
try: try:
newfile = newfile.encode(nzb2media.SYS_ENCODING) newfile = newfile.encode(nzb2media.SYS_ENCODING)
@ -83,7 +83,7 @@ def move_file(mediafile, path, link):
pass pass
# link file to its new path # link file to its new path
copy_link(mediafile, newfile, link) copy_link(filename, newfile, link)
def is_min_size(input_name, min_size): def is_min_size(input_name, min_size):

View file

@ -8,8 +8,8 @@ import typing
import nzb2media import nzb2media
from nzb2media import APP_FILENAME from nzb2media import APP_FILENAME
from nzb2media import logger
from nzb2media import SYS_ARGV from nzb2media import SYS_ARGV
from nzb2media import logger
from nzb2media import version_check from nzb2media import version_check
if os.name == 'nt': if os.name == 'nt':

View file

@ -4,19 +4,18 @@ import time
import nzb2media import nzb2media
from nzb2media import logger from nzb2media import logger
from nzb2media.torrent import deluge
from .deluge import configure_client as deluge_client from nzb2media.torrent import qbittorrent
from .qbittorrent import configure_client as qbittorrent_client from nzb2media.torrent import synology
from .synology import configure_client as synology_client from nzb2media.torrent import transmission
from .transmission import configure_client as transmission_client from nzb2media.torrent import utorrent
from .utorrent import configure_client as utorrent_client
torrent_clients = { torrent_clients = {
'deluge': deluge_client, 'deluge': deluge,
'qbittorrent': qbittorrent_client, 'qbittorrent': qbittorrent,
'transmission': transmission_client, 'transmission': transmission,
'utorrent': utorrent_client, 'utorrent': utorrent,
'synods': synology_client, 'synods': synology,
} }
@ -24,9 +23,12 @@ def create_torrent_class(client_agent):
if not nzb2media.APP_NAME == 'TorrentToMedia.py': if not nzb2media.APP_NAME == 'TorrentToMedia.py':
return # Skip loading Torrent for NZBs. return # Skip loading Torrent for NZBs.
client = torrent_clients.get(client_agent) try:
if client: agent = torrent_clients[client_agent]
return client() except KeyError:
return
else:
return agent.configure_client()
def pause_torrent(client_agent, input_hash, input_id, input_name): def pause_torrent(client_agent, input_hash, input_id, input_name):

View file

@ -5,6 +5,7 @@ deluge-client@git+https://github.com/labrys/deluge.git@master
guessit guessit
jaraco-windows ; sys.platform == 'win32' jaraco-windows ; sys.platform == 'win32'
linktastic linktastic
mediafile
python-qbittorrent python-qbittorrent
pywin32 ; sys.platform == 'win32' pywin32 ; sys.platform == 'win32'
pyxdg pyxdg

View file

@ -76,9 +76,9 @@ ignore =
; FIx3 print_function 3.0 ; FIx3 print_function 3.0
; FIx4 unicode_literals 3.0 ; FIx4 unicode_literals 3.0
; FIx5 generator_stop 3.7 ; FIx5 generator_stop 3.7
; ???? annotations 4.0 ; FIx8 annotations 4.0
; FI90 __future__ import does not exist ; FI90 __future__ import does not exist
FI50, FI51, FI53, FI54 FI10, FI11, FI13, FI14, FI58
per-file-ignores = per-file-ignores =
; F401 imported but unused ; F401 imported but unused