diff --git a/gui/slick/views/config_providers.mako b/gui/slick/views/config_providers.mako index aa61e0e63bb93c0f4569430f6d04b7bd3f0777b1..925bde98110f91acdbac1519ba1c61f10edf0e60 100644 --- a/gui/slick/views/config_providers.mako +++ b/gui/slick/views/config_providers.mako @@ -70,7 +70,7 @@ % for curProvider in sickbeard.providers.sortedProviderList(): <% ## These will show the '!' not saying they are broken - broken_providers = {} + broken_providers = {'torrentproject', 'cpasbien'} if curProvider.provider_type == GenericProvider.NZB and not sickbeard.USE_NZBS: continue elif curProvider.provider_type == GenericProvider.TORRENT and not sickbeard.USE_TORRENTS: diff --git a/setup.py b/setup.py index 51af4fbfd0bfe003cf03a947262ccecd345c808c..2b096395b5ed7db73ac882c6686a378b10d047a5 100644 --- a/setup.py +++ b/setup.py @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -* """ Use setup tools to install sickrage """ diff --git a/sickbeard/auto_postprocessor.py b/sickbeard/auto_postprocessor.py index 75f2a7034052476221398a7b322efad9e80b4e5e..331282cf07a61b2eff94b375346e6fa6f6df3add 100644 --- a/sickbeard/auto_postprocessor.py +++ b/sickbeard/auto_postprocessor.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import threading import sickbeard diff --git a/sickbeard/blackandwhitelist.py b/sickbeard/blackandwhitelist.py index 6660b232111cf5d60ee6d883f089bd6536204075..1f3e0bebbc1f490e151be566f2d45afb14486875 100644 --- a/sickbeard/blackandwhitelist.py +++ b/sickbeard/blackandwhitelist.py @@ -20,9 +20,8 @@ from __future__ import print_function, unicode_literals -from adba.aniDBerrors import AniDBCommandTimeoutError - import sickbeard +from adba.aniDBerrors import AniDBCommandTimeoutError from sickbeard import db, helpers, logger diff --git a/sickbeard/browser.py b/sickbeard/browser.py index 52279afefeb72d18e094e128dbf6af9fef37d2d6..7e722b5819dcbd21a2b972282de5c350a05baa2d 100644 --- a/sickbeard/browser.py +++ b/sickbeard/browser.py @@ -24,9 +24,8 @@ import os import string from operator import itemgetter -import six - import sickbeard +import six from sickbeard import logger from sickrage.helper.encoding import ek diff --git a/sickbeard/bs4_parser.py b/sickbeard/bs4_parser.py index 1baf61e96a4cdb8a42c2a9ff746b10225335ec03..61fcfbe496bae17e9aa003df8cfb61248dd9da2d 100644 --- a/sickbeard/bs4_parser.py +++ b/sickbeard/bs4_parser.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from bs4 import BeautifulSoup diff --git a/sickbeard/classes.py b/sickbeard/classes.py index d47180d4c49b5e6c5ff738fe65fdcf42e0257c53..0999c27fb0df3a14fac8f802d708857132fef7e6 100644 --- a/sickbeard/classes.py +++ b/sickbeard/classes.py @@ -26,8 +26,6 @@ import sys import sickbeard from sickbeard.common import Quality, USER_AGENT from sickrage.helper.common import dateTimeFormat - - from six.moves import urllib diff --git a/sickbeard/clients/download_station_client.py b/sickbeard/clients/download_station_client.py index 04d48f9b046ec36b29446794dce77678b19800b7..8e72417c456f244611090b560b36e08e00cd38da 100644 --- a/sickbeard/clients/download_station_client.py +++ b/sickbeard/clients/download_station_client.py @@ -19,18 +19,17 @@ # Uses the Synology Download Station API: http://download.synology.com/download/Document/DeveloperGuide/Synology_Download_Station_Web_API.pdf from __future__ import unicode_literals -from requests.compat import urljoin + import os import re import sickbeard +import six +from requests.compat import urljoin from sickbeard import logger from sickbeard.clients.generic import GenericClient -import six - - class DownloadStationAPI(GenericClient): """ Class to send torrents/NZBs or links to them to DownloadStation diff --git a/sickbeard/clients/generic.py b/sickbeard/clients/generic.py index 160055735359e9d2cc87e22d8bb59e0fa5168c29..4352c7eb87887fef1ba29476fda9206398c3d7ef 100644 --- a/sickbeard/clients/generic.py +++ b/sickbeard/clients/generic.py @@ -21,16 +21,15 @@ from __future__ import unicode_literals import re import time -from hashlib import sha1 -from requests.compat import urlencode -from requests.models import HTTPError from base64 import b16encode, b32decode -import bencode +from hashlib import sha1 +import bencode import sickbeard -from sickbeard import logger, helpers - import six +from requests.compat import urlencode +from requests.models import HTTPError +from sickbeard import helpers, logger class GenericClient(object): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/clients/mlnet_client.py b/sickbeard/clients/mlnet_client.py index dd99eee34d967880ea8675b45e68396e76dc9e09..d3f879cbfbec7e435a1f41bdaefb8301faff3ee8 100644 --- a/sickbeard/clients/mlnet_client.py +++ b/sickbeard/clients/mlnet_client.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard.clients.generic import GenericClient diff --git a/sickbeard/clients/putio_client.py b/sickbeard/clients/putio_client.py index caa8d18dca076f393f5f10a7e914ffeefbd89f15..23b07a17c602b9cf2cbb77365e869521268ac027 100644 --- a/sickbeard/clients/putio_client.py +++ b/sickbeard/clients/putio_client.py @@ -17,8 +17,9 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -from putiopy import Client as PutioClient, ClientError +from __future__ import unicode_literals +from putiopy import Client as PutioClient, ClientError from sickbeard import helpers from sickbeard.clients.generic import GenericClient diff --git a/sickbeard/clients/qbittorrent_client.py b/sickbeard/clients/qbittorrent_client.py index 8778073150f3821de9c558f1a9d60849dae1c953..9b80a6eff0f9dc0215fdf65130481a0689cb8b5d 100644 --- a/sickbeard/clients/qbittorrent_client.py +++ b/sickbeard/clients/qbittorrent_client.py @@ -18,12 +18,14 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from time import sleep import sickbeard +from requests.auth import HTTPDigestAuth from sickbeard.clients.generic import GenericClient from sickrage.helper.common import try_int -from requests.auth import HTTPDigestAuth class qbittorrentAPI(GenericClient): diff --git a/sickbeard/clients/rtorrent_client.py b/sickbeard/clients/rtorrent_client.py index f0117159511747b10ec8c8c4021b8ec189e04e6c..28d96960d85d92de92540521a5a94490825602cd 100644 --- a/sickbeard/clients/rtorrent_client.py +++ b/sickbeard/clients/rtorrent_client.py @@ -26,11 +26,9 @@ from __future__ import print_function, unicode_literals -from rtorrent import RTorrent # pylint: disable=import-error - import sickbeard - -from sickbeard import logger, ex +from rtorrent import RTorrent # pylint: disable=import-error +from sickbeard import ex, logger from sickbeard.clients.generic import GenericClient diff --git a/sickbeard/clients/transmission_client.py b/sickbeard/clients/transmission_client.py index b2e96e76a655e1cae8d5c4046312f3319522d895..85b670a4daad43efd87326b08178151ab2c84813 100644 --- a/sickbeard/clients/transmission_client.py +++ b/sickbeard/clients/transmission_client.py @@ -18,9 +18,11 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -from base64 import b64encode +from __future__ import unicode_literals + import json import re +from base64 import b64encode import sickbeard from sickbeard.clients.generic import GenericClient diff --git a/sickbeard/clients/utorrent_client.py b/sickbeard/clients/utorrent_client.py index 419e188056499647295ae24fab466a47a14c0d2d..f3a8a595d7a7cb11054be2e12ff0c267528e6a6d 100644 --- a/sickbeard/clients/utorrent_client.py +++ b/sickbeard/clients/utorrent_client.py @@ -21,13 +21,11 @@ from __future__ import unicode_literals import re from collections import OrderedDict -from requests.compat import urljoin import sickbeard -from sickbeard.clients.generic import GenericClient - - import six +from requests.compat import urljoin +from sickbeard.clients.generic import GenericClient class uTorrentAPI(GenericClient): diff --git a/sickbeard/common.py b/sickbeard/common.py index 2381f29bd614b063a6b32c26c6cc195d35b44c8d..3cdc99d4ec7648dd97f85927fa9b6f5663315954 100644 --- a/sickbeard/common.py +++ b/sickbeard/common.py @@ -32,16 +32,14 @@ import re import uuid from os import path -from fake_useragent import UserAgent, settings as UA_SETTINGS - -# noinspection PyUnresolvedReferences -from six.moves import reduce - +from fake_useragent import settings as UA_SETTINGS, UserAgent from sickbeard.numdict import NumDict from sickrage.helper import video_screen_size from sickrage.helper.encoding import ek from sickrage.recompiled import tags from sickrage.tagger.episode import EpisodeTags +# noinspection PyUnresolvedReferences +from six.moves import reduce gettext.install('messages', unicode=1, codeset='UTF-8', names=["ngettext"]) diff --git a/sickbeard/config.py b/sickbeard/config.py index 38ef53bfc88a2e3bab5d63f69ae4e4bc85673f3c..1cefe81546514a451bfff35f96da06b6ea66842e 100644 --- a/sickbeard/config.py +++ b/sickbeard/config.py @@ -25,17 +25,14 @@ import os.path import platform import re -import six - -# noinspection PyUnresolvedReferences -from six.moves.urllib import parse - import rarfile - import sickbeard +import six from sickbeard import db, helpers, logger, naming from sickrage.helper.common import try_int from sickrage.helper.encoding import ek +# noinspection PyUnresolvedReferences +from six.moves.urllib import parse # Address poor support for scgi over unix domain sockets # this is not nicely handled by python currently diff --git a/sickbeard/databases/cache_db.py b/sickbeard/databases/cache_db.py index 1fe32f5e1839dd8693251309107bda4a4552334b..468fb3a1daef39d811850c11ddf8b527e23b8746 100644 --- a/sickbeard/databases/cache_db.py +++ b/sickbeard/databases/cache_db.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard import db diff --git a/sickbeard/databases/failed_db.py b/sickbeard/databases/failed_db.py index 0cfdb55943c12ef44441f3a2018d35970a28dc6a..2e8a75d499a690bedb8ea6a4ef20e7c9df09ac53 100644 --- a/sickbeard/databases/failed_db.py +++ b/sickbeard/databases/failed_db.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard import db from sickbeard.common import Quality diff --git a/sickbeard/databases/mainDB.py b/sickbeard/databases/mainDB.py index 752d760d50635f7f333f45e7fb07ca91cdf44ba1..fe8a8908da922f5d658d9a318ece62a9977ceadf 100644 --- a/sickbeard/databases/mainDB.py +++ b/sickbeard/databases/mainDB.py @@ -22,22 +22,16 @@ from __future__ import print_function, unicode_literals import datetime - -import warnings -import sickbeard import os.path +import warnings -from sickbeard import db, common, helpers, logger - -from sickbeard.name_parser.parser import NameParser, InvalidNameException, InvalidShowException +import sickbeard +import six +from sickbeard import common, db, helpers, logger, subtitles +from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickrage.helper.common import dateTimeFormat, episode_num from sickrage.helper.encoding import ek -from sickbeard import subtitles - -import six - - MIN_DB_VERSION = 9 # oldest db version we support migrating from MAX_DB_VERSION = 44 diff --git a/sickbeard/db.py b/sickbeard/db.py index aa209d8e9070ad31493abf09d77cd422205ea35a..dc7cbaaad51d3adc1a702bb41f9c557d03ec519f 100644 --- a/sickbeard/db.py +++ b/sickbeard/db.py @@ -29,13 +29,11 @@ import warnings from sqlite3 import OperationalError import sickbeard +import six from sickbeard import logger from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex -import six - - db_cons = {} db_locks = {} diff --git a/sickbeard/event_queue.py b/sickbeard/event_queue.py index df47fe68b90a740854e6279063d6737c91a10036..4bbda4dfc65d8532b49d0a6cf7900530efde3190 100644 --- a/sickbeard/event_queue.py +++ b/sickbeard/event_queue.py @@ -7,8 +7,6 @@ import traceback from sickbeard import logger from sickrage.helper.exceptions import ex - - from six.moves.queue import Empty, Queue diff --git a/sickbeard/failed_history.py b/sickbeard/failed_history.py index d05657be1267189b7e34ff292dce9b78d56aea22..8c1a6a877d0902c1526780f0349de84e64d70dee 100644 --- a/sickbeard/failed_history.py +++ b/sickbeard/failed_history.py @@ -28,8 +28,6 @@ from sickbeard.common import FAILED, Quality, WANTED from sickrage.helper.encoding import ss from sickrage.helper.exceptions import EpisodeNotFoundException, ex from sickrage.show.History import History - - from six.moves import urllib diff --git a/sickbeard/helpers.py b/sickbeard/helpers.py index ed59353e06d54a75b9b6033048fd8341a93292ad..ec5d5946fbb35dd9cf908b2c6a60389a02b4f1b9 100644 --- a/sickbeard/helpers.py +++ b/sickbeard/helpers.py @@ -31,7 +31,6 @@ import operator import os import platform import random -import rarfile import re import shutil import socket @@ -48,25 +47,23 @@ from itertools import cycle, izip import adba import certifi import cfscrape +import rarfile import requests +import sickbeard +import six from cachecontrol import CacheControl -from requests.utils import urlparse from requests.compat import urljoin -import six - -# noinspection PyUnresolvedReferences -from six.moves import urllib -# noinspection PyProtectedMember -from tornado._locale_data import LOCALE_NAMES - -import sickbeard +from requests.utils import urlparse from sickbeard import classes, db, logger from sickbeard.common import USER_AGENT -from sickrage.helper import MEDIA_EXTENSIONS, SUBTITLE_EXTENSIONS, episode_num, pretty_file_size +from sickrage.helper import episode_num, MEDIA_EXTENSIONS, pretty_file_size, SUBTITLE_EXTENSIONS from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex from sickrage.show.Show import Show - +# noinspection PyUnresolvedReferences +from six.moves import urllib +# noinspection PyProtectedMember +from tornado._locale_data import LOCALE_NAMES # Add some missing languages LOCALE_NAMES.update({ diff --git a/sickbeard/history.py b/sickbeard/history.py index a78d00b5b4a42741b390e582cfc318d4b3e3b366..f663cf708323b110ff0ef60cb7520c5f27634f96 100644 --- a/sickbeard/history.py +++ b/sickbeard/history.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import datetime import db diff --git a/sickbeard/image_cache.py b/sickbeard/image_cache.py index fdefb8421633e340c5304ca90560a88347163552..44c313b4506252b7cab6899845a0e8dc2c1545a8 100644 --- a/sickbeard/image_cache.py +++ b/sickbeard/image_cache.py @@ -22,15 +22,15 @@ from __future__ import print_function, unicode_literals import os.path +import sickbeard from hachoir_core.log import log from hachoir_metadata import extractMetadata from hachoir_parser import createParser - -import sickbeard from sickbeard import helpers, logger from sickbeard.metadata.generic import GenericMetadata from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ShowDirectoryNotFoundException + log.use_print = False diff --git a/sickbeard/imdbPopular.py b/sickbeard/imdbPopular.py index 684a01b7c9e11a87f3b8e7bcba9c62ecf563819c..f146b462116a8e1adecbe87224feed4afe060f3a 100644 --- a/sickbeard/imdbPopular.py +++ b/sickbeard/imdbPopular.py @@ -7,9 +7,8 @@ import posixpath import re from datetime import date -from bs4 import BeautifulSoup - import sickbeard +from bs4 import BeautifulSoup from sickbeard import helpers from sickrage.helper.encoding import ek diff --git a/sickbeard/indexers/indexer_api.py b/sickbeard/indexers/indexer_api.py index 57eb496b139c71c1355bc3651812b69dedc8f05c..0ade80c2133d7722cc5f59dd0ee48c85acf005cd 100644 --- a/sickbeard/indexers/indexer_api.py +++ b/sickbeard/indexers/indexer_api.py @@ -18,14 +18,15 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import os + import sickbeard +from indexer_config import indexerConfig, initConfig from sickrage.helper.common import try_int from sickrage.helper.encoding import ek -from indexer_config import initConfig -from indexer_config import indexerConfig - class indexerApi(object): def __init__(self, indexerID=None): diff --git a/sickbeard/indexers/indexer_config.py b/sickbeard/indexers/indexer_config.py index e23d02820b949f3c5c917d81875705c5372d7219..58bccd4754fe238c55beefcc02c48ce321ad9628 100644 --- a/sickbeard/indexers/indexer_config.py +++ b/sickbeard/indexers/indexer_config.py @@ -1,7 +1,9 @@ # coding=utf-8 -from tvdb_api.tvdb_api import Tvdb +from __future__ import unicode_literals + from sickbeard import helpers +from tvdb_api.tvdb_api import Tvdb initConfig = { 'valid_languages': [ diff --git a/sickbeard/indexers/indexer_exceptions.py b/sickbeard/indexers/indexer_exceptions.py index cd5d7ed752b6383e09653357b7529c40a5fa15e9..b5de2ef407fccc4ac460fb6058c82c91007ec067 100644 --- a/sickbeard/indexers/indexer_exceptions.py +++ b/sickbeard/indexers/indexer_exceptions.py @@ -19,8 +19,10 @@ """Custom exceptions used or raised by indexer_api""" -from tvdb_api.tvdb_exceptions import (tvdb_exception, tvdb_error, tvdb_userabort, tvdb_shownotfound, tvdb_showincomplete, - tvdb_seasonnotfound, tvdb_episodenotfound, tvdb_attributenotfound) +from __future__ import unicode_literals + +from tvdb_api.tvdb_exceptions import (tvdb_attributenotfound, tvdb_episodenotfound, tvdb_error, tvdb_exception, tvdb_seasonnotfound, tvdb_showincomplete, + tvdb_shownotfound, tvdb_userabort) indexerExcepts = ["indexer_exception", "indexer_error", "indexer_userabort", "indexer_shownotfound", "indexer_showincomplete", "indexer_seasonnotfound", "indexer_episodenotfound", "indexer_attributenotfound"] diff --git a/sickbeard/logger.py b/sickbeard/logger.py index eb4c6b174fbfbf66adae03934cd3b9a3110273fe..38151be233a97f0a33bf0548202ffdd234a46251 100644 --- a/sickbeard/logger.py +++ b/sickbeard/logger.py @@ -36,17 +36,15 @@ import threading import traceback from logging import NullHandler +import sickbeard import six from github import InputFileContent, RateLimitExceededException, TwoFactorException - -# noinspection PyUnresolvedReferences -from six.moves.urllib.parse import quote - -import sickbeard from sickbeard import classes from sickrage.helper.common import dateTimeFormat from sickrage.helper.encoding import ek, ss from sickrage.helper.exceptions import ex +# noinspection PyUnresolvedReferences +from six.moves.urllib.parse import quote # pylint: disable=line-too-long diff --git a/sickbeard/metadata/generic.py b/sickbeard/metadata/generic.py index e5735481f1c7a66c08cf6128ea136847c6e3c8b4..5e385b161b011c6b91a2c8f404a891e1f2d2aabd 100644 --- a/sickbeard/metadata/generic.py +++ b/sickbeard/metadata/generic.py @@ -20,32 +20,32 @@ from __future__ import print_function, unicode_literals -import os import io +import os import re +import fanart as fanart_module +import sickbeard +import six +from fanart.core import Request as fanartRequest +from sickbeard import helpers, logger +from sickbeard.metadata import helpers as metadata_helpers +from sickbeard.show_name_helpers import allPossibleShowNames +from sickrage.helper.common import replace_extension, try_int +from sickrage.helper.encoding import ek +from sickrage.helper.exceptions import ex +from tmdb_api.tmdb_api import TMDB + try: import xml.etree.cElementTree as etree except ImportError: import xml.etree.ElementTree as etree -import sickbeard -from sickbeard import helpers -from sickbeard import logger -from sickbeard.metadata import helpers as metadata_helpers -from sickbeard.show_name_helpers import allPossibleShowNames -from sickrage.helper.common import replace_extension, try_int -from sickrage.helper.exceptions import ex -from sickrage.helper.encoding import ek -from tmdb_api.tmdb_api import TMDB -import fanart as fanart_module -from fanart.core import Request as fanartRequest -import six class GenericMetadata(object): diff --git a/sickbeard/metadata/helpers.py b/sickbeard/metadata/helpers.py index 8596f2d34904355b59ba0cb233d5759c80432674..2a2e1aacaf0aba045d3416d5259cc49239ec26f0 100644 --- a/sickbeard/metadata/helpers.py +++ b/sickbeard/metadata/helpers.py @@ -20,8 +20,7 @@ from __future__ import print_function, unicode_literals -from sickbeard import helpers -from sickbeard import logger +from sickbeard import helpers, logger meta_session = helpers.make_session() diff --git a/sickbeard/metadata/kodi.py b/sickbeard/metadata/kodi.py index 3748436fb56cc4b8a6dfa045d3802b8314ecbcf2..afdbb234bc287d98299c82999a68d36657616f77 100644 --- a/sickbeard/metadata/kodi.py +++ b/sickbeard/metadata/kodi.py @@ -18,10 +18,11 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import os -from sickbeard.metadata import generic -from sickbeard.metadata import kodi_12plus +from sickbeard.metadata import generic, kodi_12plus from sickrage.helper.common import replace_extension from sickrage.helper.encoding import ek diff --git a/sickbeard/metadata/kodi_12plus.py b/sickbeard/metadata/kodi_12plus.py index 04dac5882b074bb763dbb6c3cf6cad0c8e27d562..f0f985399c06972f5b44f720618538cdc2939709 100644 --- a/sickbeard/metadata/kodi_12plus.py +++ b/sickbeard/metadata/kodi_12plus.py @@ -19,19 +19,17 @@ from __future__ import print_function, unicode_literals -import re import datetime -from babelfish import Country +import re import sickbeard +import six +from babelfish import Country +from sickbeard import helpers, logger from sickbeard.metadata import generic -from sickbeard import logger, helpers from sickrage.helper.common import dateFormat from sickrage.helper.exceptions import ex, ShowNotFoundException -import six - - try: import xml.etree.cElementTree as etree except ImportError: diff --git a/sickbeard/metadata/mede8er.py b/sickbeard/metadata/mede8er.py index f1cd053270bd6355e312f17c99dcbed165cc4bb6..379aea3d473bdae3de4a1d3203c4d8ebd45ccfd3 100644 --- a/sickbeard/metadata/mede8er.py +++ b/sickbeard/metadata/mede8er.py @@ -20,15 +20,14 @@ from __future__ import print_function, unicode_literals +import datetime import io import os -import datetime import sickbeard -from sickbeard import logger, helpers -from sickbeard.metadata import mediabrowser import six - +from sickbeard import helpers, logger +from sickbeard.metadata import mediabrowser from sickrage.helper.common import dateFormat, replace_extension from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex, ShowNotFoundException diff --git a/sickbeard/metadata/mediabrowser.py b/sickbeard/metadata/mediabrowser.py index fbe060ccc49fe93bcdb09f12dc5ce96234618c30..0f4108ca913bc037fab23e95a0d394fea9b8cb3d 100644 --- a/sickbeard/metadata/mediabrowser.py +++ b/sickbeard/metadata/mediabrowser.py @@ -25,18 +25,13 @@ import os import re import sickbeard - +import six +from sickbeard import helpers, logger from sickbeard.metadata import generic - -from sickbeard import logger, helpers - from sickrage.helper.common import dateFormat, replace_extension from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex, ShowNotFoundException -import six - - try: import xml.etree.cElementTree as etree except ImportError: diff --git a/sickbeard/metadata/ps3.py b/sickbeard/metadata/ps3.py index 6824c633dbcc7fe4186881b8a70e3f4827fcb86f..db822d96cd23c6ec262762a8d3f13f3c305f0b94 100644 --- a/sickbeard/metadata/ps3.py +++ b/sickbeard/metadata/ps3.py @@ -18,10 +18,11 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import os from sickbeard.metadata import generic - from sickrage.helper.encoding import ek diff --git a/sickbeard/metadata/tivo.py b/sickbeard/metadata/tivo.py index ffa6d0bbfd0806b9f53f2ae973f0050134566f58..75cf47500a5044706a2c8ee021f738f1b70f0b53 100644 --- a/sickbeard/metadata/tivo.py +++ b/sickbeard/metadata/tivo.py @@ -21,12 +21,12 @@ from __future__ import print_function, unicode_literals +import datetime import io import os -import datetime import sickbeard -from sickbeard import logger, helpers +from sickbeard import helpers, logger from sickbeard.metadata import generic from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex, ShowNotFoundException diff --git a/sickbeard/metadata/wdtv.py b/sickbeard/metadata/wdtv.py index a1cbad720ab572c8372b0269e496de3632190b75..a44f8086489454c20a2314741eacb44c900fd6ee 100644 --- a/sickbeard/metadata/wdtv.py +++ b/sickbeard/metadata/wdtv.py @@ -25,10 +25,8 @@ import os import re import sickbeard - +from sickbeard import helpers, logger from sickbeard.metadata import generic - -from sickbeard import logger, helpers from sickrage.helper.common import dateFormat, replace_extension from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex, ShowNotFoundException diff --git a/sickbeard/name_cache.py b/sickbeard/name_cache.py index fbe817198cee9fa26135113bcf42535506b5e1e6..bef228eb1b4a6bb52215dd36e9dd4ff761794a01 100644 --- a/sickbeard/name_cache.py +++ b/sickbeard/name_cache.py @@ -17,13 +17,13 @@ # # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import threading import sickbeard -from sickbeard import db - import six - +from sickbeard import db # from sickbeard import logger diff --git a/sickbeard/name_parser/parser.py b/sickbeard/name_parser/parser.py index 37029f3096a1dc3a9dace1180d4db15c937c9512..4ba359c9038a22680a051635e5d8adaa4c23b314 100644 --- a/sickbeard/name_parser/parser.py +++ b/sickbeard/name_parser/parser.py @@ -27,9 +27,8 @@ from collections import OrderedDict from threading import Lock import dateutil -import six - import sickbeard +import six from sickbeard import common, db, helpers, logger, scene_exceptions, scene_numbering from sickbeard.name_parser import regexes from sickrage.helper.common import remove_extension diff --git a/sickbeard/network_timezones.py b/sickbeard/network_timezones.py index 0a02b1bd53dc73c93607c112e717b92a28e549fa..e93cffb52b677484acd99769c7c35a465bab1648 100644 --- a/sickbeard/network_timezones.py +++ b/sickbeard/network_timezones.py @@ -23,9 +23,8 @@ from __future__ import print_function, unicode_literals import datetime import re -from dateutil import tz import six - +from dateutil import tz from sickbeard import db, helpers, logger from sickrage.helper.common import try_int diff --git a/sickbeard/notifiers/boxcar2.py b/sickbeard/notifiers/boxcar2.py index b04cac8bb591d4ef826a7c8ec25595a50c5e6d18..70159f23db7e54bc8fa2500afe044d6fc523b00e 100644 --- a/sickbeard/notifiers/boxcar2.py +++ b/sickbeard/notifiers/boxcar2.py @@ -21,9 +21,9 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals -import sickbeard -from sickbeard import logger, common +import sickbeard +from sickbeard import common, logger class Notifier(object): diff --git a/sickbeard/notifiers/discord.py b/sickbeard/notifiers/discord.py index 1e86e36450fa0b9ad471a33031f2be24f4e1ff88..3a0dffed3d15d363a7a52a721ef2974d52c9d11c 100644 --- a/sickbeard/notifiers/discord.py +++ b/sickbeard/notifiers/discord.py @@ -19,14 +19,12 @@ from __future__ import unicode_literals import json -import requests +import requests import sickbeard -from sickbeard import logger, common -from sickrage.helper.exceptions import ex - - import six +from sickbeard import common, logger +from sickrage.helper.exceptions import ex class Notifier(object): diff --git a/sickbeard/notifiers/emailnotify.py b/sickbeard/notifiers/emailnotify.py index 4ce981698a3c314e10f734c647b46caf8f95ca70..3cdbad6f5f80de9ba6575f0100b8d5b1815abf29 100644 --- a/sickbeard/notifiers/emailnotify.py +++ b/sickbeard/notifiers/emailnotify.py @@ -24,19 +24,17 @@ ############################################################################## from __future__ import unicode_literals + +import ast +import re import smtplib # import traceback -import ast from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.utils import formatdate -import re - import sickbeard - -from sickbeard import logger -from sickbeard import db +from sickbeard import db, logger from sickrage.helper.encoding import ss diff --git a/sickbeard/notifiers/emby.py b/sickbeard/notifiers/emby.py index 35d3b55fec12b63dc6c65c1a6e8bf9a283964cf8..7a7e2294862deece897884a9991b5abca65b1539 100644 --- a/sickbeard/notifiers/emby.py +++ b/sickbeard/notifiers/emby.py @@ -21,13 +21,10 @@ from __future__ import print_function, unicode_literals import sickbeard - from sickbeard import logger from sickrage.helper.exceptions import ex - from six.moves import urllib - try: import json except ImportError: diff --git a/sickbeard/notifiers/freemobile.py b/sickbeard/notifiers/freemobile.py index 58ee0d6212e4360231a5b4c340659b6eecd2e0a2..35d26c97b64bac3c3bdacc6f848b1a73448e7064 100644 --- a/sickbeard/notifiers/freemobile.py +++ b/sickbeard/notifiers/freemobile.py @@ -23,10 +23,10 @@ from __future__ import print_function, unicode_literals import sickbeard -from sickbeard import logger -from sickbeard.common import notifyStrings, NOTIFY_SNATCH, NOTIFY_DOWNLOAD, NOTIFY_SUBTITLE_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT - import six +from sickbeard import logger +from sickbeard.common import (NOTIFY_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, NOTIFY_SNATCH, + NOTIFY_SUBTITLE_DOWNLOAD, notifyStrings) from six.moves import urllib diff --git a/sickbeard/notifiers/growl.py b/sickbeard/notifiers/growl.py index 13ede0cc6459acd88f29730f2631a3cfc34af4c1..2cd2f5950f7a99a2d02cdc2b07da1c19f59011a0 100644 --- a/sickbeard/notifiers/growl.py +++ b/sickbeard/notifiers/growl.py @@ -23,9 +23,9 @@ from __future__ import print_function, unicode_literals import socket import sickbeard -from sickbeard import logger, common -from sickrage.helper.exceptions import ex from libgrowl import gntp +from sickbeard import common, logger +from sickrage.helper.exceptions import ex class Notifier(object): diff --git a/sickbeard/notifiers/join.py b/sickbeard/notifiers/join.py index dd8f89c7e27202e36635fc642a363736dddf86cb..a082762af175b964e912efddea06cec03b53601e 100644 --- a/sickbeard/notifiers/join.py +++ b/sickbeard/notifiers/join.py @@ -19,12 +19,10 @@ from __future__ import unicode_literals - import sickbeard from sickbeard import logger -from sickbeard.common import NOTIFY_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, NOTIFY_SNATCH, \ - NOTIFY_SUBTITLE_DOWNLOAD, notifyStrings - +from sickbeard.common import (NOTIFY_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, NOTIFY_SNATCH, + NOTIFY_SUBTITLE_DOWNLOAD, notifyStrings) from six.moves import urllib diff --git a/sickbeard/notifiers/kodi.py b/sickbeard/notifiers/kodi.py index 77268e0c8e47a744c3d97f02fedc822a207d6baa..c6e5dd8e7b6d4b2c084c9dc742abe43180633185 100644 --- a/sickbeard/notifiers/kodi.py +++ b/sickbeard/notifiers/kodi.py @@ -20,18 +20,16 @@ from __future__ import print_function, unicode_literals -import socket import base64 +import socket import time import sickbeard -from sickbeard import logger, common -from sickrage.helper.exceptions import ex -from sickrage.helper.encoding import ss import six -from six.moves import urllib -from six.moves import http_client - +from sickbeard import common, logger +from sickrage.helper.encoding import ss +from sickrage.helper.exceptions import ex +from six.moves import http_client, urllib try: import xml.etree.cElementTree as etree diff --git a/sickbeard/notifiers/libnotify.py b/sickbeard/notifiers/libnotify.py index 2cdf75247af8fa1a8b2259f8bcfd3dd9bda812ee..7496f97764e6d2ce9cf69e3012af824076b4879a 100644 --- a/sickbeard/notifiers/libnotify.py +++ b/sickbeard/notifiers/libnotify.py @@ -20,12 +20,11 @@ from __future__ import print_function, unicode_literals -import os import cgi +import os import warnings import sickbeard - from sickbeard import common from sickrage.helper.encoding import ek diff --git a/sickbeard/notifiers/nma.py b/sickbeard/notifiers/nma.py index 449d6d2252e8f245f21055d27f8a254a650c2ddd..028bbccb93089e9ede3da4caeaa6c59866d51c5f 100644 --- a/sickbeard/notifiers/nma.py +++ b/sickbeard/notifiers/nma.py @@ -3,9 +3,8 @@ from __future__ import print_function, unicode_literals import sickbeard - -from sickbeard import logger, common from pynma import pynma +from sickbeard import common, logger class Notifier(object): diff --git a/sickbeard/notifiers/nmj.py b/sickbeard/notifiers/nmj.py index 26fb58e837b8d70f6d62e036df1eecf723f63412..2e90e5560f671fb07cbb7f5532e2958f3fc13dad 100644 --- a/sickbeard/notifiers/nmj.py +++ b/sickbeard/notifiers/nmj.py @@ -20,16 +20,14 @@ from __future__ import print_function, unicode_literals -import sickbeard -import telnetlib import re +import telnetlib +import sickbeard from sickbeard import logger from sickrage.helper.exceptions import ex - from six.moves import urllib - try: import xml.etree.cElementTree as etree except ImportError: diff --git a/sickbeard/notifiers/nmjv2.py b/sickbeard/notifiers/nmjv2.py index 66afd2e608e0eebe0f5510220d2f0439aeda4ff6..0595ac42bab2d79e1174a9fd1884b3f6c12d0b82 100644 --- a/sickbeard/notifiers/nmjv2.py +++ b/sickbeard/notifiers/nmjv2.py @@ -21,15 +21,13 @@ from __future__ import print_function, unicode_literals -from xml.dom.minidom import parseString -import sickbeard import time +from xml.dom.minidom import parseString +import sickbeard from sickbeard import logger - from six.moves import urllib - try: import xml.etree.cElementTree as etree except ImportError: diff --git a/sickbeard/notifiers/plex.py b/sickbeard/notifiers/plex.py index 449c561bc55cce35553583f0c8b83e984c91aa0f..c91b516f4c903ab34dbcbdb7bbb80d778d160884 100644 --- a/sickbeard/notifiers/plex.py +++ b/sickbeard/notifiers/plex.py @@ -21,17 +21,19 @@ from __future__ import print_function, unicode_literals import re + +import sickbeard +import six +from sickbeard import common, logger +from sickbeard.helpers import getURL, make_session +from sickrage.helper.exceptions import ex + try: import xml.etree.cElementTree as etree except ImportError: import xml.etree.ElementTree as etree -import sickbeard -from sickbeard import logger, common -from sickbeard.helpers import getURL, make_session -import six -from sickrage.helper.exceptions import ex class Notifier(object): diff --git a/sickbeard/notifiers/prowl.py b/sickbeard/notifiers/prowl.py index 230b8c6603ad01376c5b93db34d131354fd8b9b6..3582480ad16291c6cf8ceb9f2e32cd3c6a171b8b 100644 --- a/sickbeard/notifiers/prowl.py +++ b/sickbeard/notifiers/prowl.py @@ -22,8 +22,15 @@ from __future__ import unicode_literals +import ast import socket +import time + +import sickbeard from requests.compat import urlencode +from sickbeard import common, db, logger +from sickrage.helper.encoding import ss +from six.moves.http_client import HTTPException, HTTPSConnection try: # this only exists in 2.6 @@ -33,13 +40,7 @@ except ImportError: class SSLError(Exception): pass -import sickbeard -from six.moves.http_client import HTTPSConnection, HTTPException -import time -import ast -from sickbeard import logger, common, db -from sickrage.helper.encoding import ss class Notifier(object): diff --git a/sickbeard/notifiers/pushalot.py b/sickbeard/notifiers/pushalot.py index 385cb9f29cd6edacdee666354f049d6d67d31fe1..a6bdb6869371c266b7b95b54abb71c2afc384df4 100644 --- a/sickbeard/notifiers/pushalot.py +++ b/sickbeard/notifiers/pushalot.py @@ -22,7 +22,7 @@ from __future__ import unicode_literals import sickbeard -from sickbeard import logger, common +from sickbeard import common, logger class Notifier(object): diff --git a/sickbeard/notifiers/pushbullet.py b/sickbeard/notifiers/pushbullet.py index b5c5346f76208aa1b24acb9baafacb067c038465..4f9a95af2b9c871cd285d4e74c70c6892913c3fd 100644 --- a/sickbeard/notifiers/pushbullet.py +++ b/sickbeard/notifiers/pushbullet.py @@ -19,11 +19,12 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals -from requests.compat import urljoin + import re import sickbeard -from sickbeard import logger, helpers, common +from requests.compat import urljoin +from sickbeard import common, helpers, logger class Notifier(object): diff --git a/sickbeard/notifiers/pushover.py b/sickbeard/notifiers/pushover.py index fca635ff6bbf316554d922fdf555c4e52a523270..9c479b787fe009434d67deb28f5d755fd97e9b7c 100644 --- a/sickbeard/notifiers/pushover.py +++ b/sickbeard/notifiers/pushover.py @@ -25,11 +25,10 @@ import time import sickbeard from sickbeard import logger -from sickbeard.common import notifyStrings, NOTIFY_SNATCH, NOTIFY_DOWNLOAD, NOTIFY_SUBTITLE_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN_TEXT, NOTIFY_LOGIN +from sickbeard.common import (NOTIFY_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, NOTIFY_SNATCH, + NOTIFY_SUBTITLE_DOWNLOAD, notifyStrings) from sickrage.helper.exceptions import ex - -from six.moves import urllib, http_client - +from six.moves import http_client, urllib API_URL = "https://api.pushover.net/1/messages.json" diff --git a/sickbeard/notifiers/pytivo.py b/sickbeard/notifiers/pytivo.py index 8dd71edadff5134c2f88dda2c1e6c320c24c8e12..183bc719449a4fa1edbc0c16056848e38f5ae5c9 100644 --- a/sickbeard/notifiers/pytivo.py +++ b/sickbeard/notifiers/pytivo.py @@ -21,15 +21,14 @@ from __future__ import print_function, unicode_literals import os -import sickbeard +import sickbeard from requests.compat import urlencode -from six.moves.urllib.error import HTTPError -from six.moves.urllib.request import Request, urlopen - from sickbeard import logger from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex +from six.moves.urllib.error import HTTPError +from six.moves.urllib.request import Request, urlopen class Notifier(object): diff --git a/sickbeard/notifiers/slack.py b/sickbeard/notifiers/slack.py index ad678616358f6e8d74730442448f35a0bb1cadd3..80a6771295df8465eba9c75ccc5911ad86d276e7 100644 --- a/sickbeard/notifiers/slack.py +++ b/sickbeard/notifiers/slack.py @@ -19,14 +19,12 @@ from __future__ import unicode_literals import json -import requests +import requests import sickbeard -from sickbeard import logger, common -from sickrage.helper.exceptions import ex - - import six +from sickbeard import common, logger +from sickrage.helper.exceptions import ex class Notifier(object): diff --git a/sickbeard/notifiers/synoindex.py b/sickbeard/notifiers/synoindex.py index 6081bc0c7e90be7c15169db21690ede102980330..64d115c831b41290c918aaa33612959decfa6a2e 100644 --- a/sickbeard/notifiers/synoindex.py +++ b/sickbeard/notifiers/synoindex.py @@ -24,7 +24,6 @@ import os import subprocess import sickbeard - from sickbeard import logger from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex diff --git a/sickbeard/notifiers/synologynotifier.py b/sickbeard/notifiers/synologynotifier.py index 93afa0926e2ecd13d68d4e19748fe97c0b68123a..c39c651912249e88670ae414955264bc2761dee5 100644 --- a/sickbeard/notifiers/synologynotifier.py +++ b/sickbeard/notifiers/synologynotifier.py @@ -23,9 +23,7 @@ import os import subprocess import sickbeard - -from sickbeard import logger -from sickbeard import common +from sickbeard import common, logger from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex diff --git a/sickbeard/notifiers/telegram.py b/sickbeard/notifiers/telegram.py index 31731abf4ca09094c977221c8d5a10f60dd2ba1a..496df590ae2161e23154f6ad246a467dfd795ee4 100644 --- a/sickbeard/notifiers/telegram.py +++ b/sickbeard/notifiers/telegram.py @@ -21,15 +21,11 @@ from __future__ import unicode_literals - import sickbeard from sickbeard import logger -from sickbeard.common import notifyStrings, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, \ - NOTIFY_SNATCH, NOTIFY_DOWNLOAD, NOTIFY_SUBTITLE_DOWNLOAD - +from sickbeard.common import (NOTIFY_DOWNLOAD, NOTIFY_GIT_UPDATE, NOTIFY_GIT_UPDATE_TEXT, NOTIFY_LOGIN, NOTIFY_LOGIN_TEXT, NOTIFY_SNATCH, + NOTIFY_SUBTITLE_DOWNLOAD, notifyStrings) from sickrage.helper import HTTP_STATUS_CODES - - from six.moves import urllib diff --git a/sickbeard/notifiers/trakt.py b/sickbeard/notifiers/trakt.py index d8bba74913b800de21f8623369bb2913f1f909bb..12d537d9c316505c56ece23886b4e560d0fe761a 100644 --- a/sickbeard/notifiers/trakt.py +++ b/sickbeard/notifiers/trakt.py @@ -21,12 +21,11 @@ from __future__ import print_function, unicode_literals import sickbeard +from libtrakt import TraktAPI +from libtrakt.exceptions import traktAuthException, traktException, traktServerBusy from sickbeard import logger from sickrage.helper.exceptions import ex -from libtrakt import TraktAPI -from libtrakt.exceptions import traktException, traktServerBusy, traktAuthException - class Notifier(object): """ diff --git a/sickbeard/notifiers/tweet.py b/sickbeard/notifiers/tweet.py index 6950ea0c6c0299848a3d2443949746d52a1fe209..d77f5425c4966f7752299416fdcc71e9d088f9ec 100644 --- a/sickbeard/notifiers/tweet.py +++ b/sickbeard/notifiers/tweet.py @@ -20,9 +20,10 @@ from __future__ import print_function, unicode_literals +import oauth2 as oauth +import pythontwitter as twitter import sickbeard - -from sickbeard import logger, common +from sickbeard import common, logger from sickrage.helper.exceptions import ex try: @@ -30,8 +31,6 @@ try: except ImportError: from cgi import parse_qsl -import oauth2 as oauth -import pythontwitter as twitter class Notifier(object): diff --git a/sickbeard/notifiers/twilio_notify.py b/sickbeard/notifiers/twilio_notify.py index deec6a00d0c7a4c750609b928b78e5f245c19679..d2eaabf54fa4919f3dd39a60484af4aa9a66ee31 100644 --- a/sickbeard/notifiers/twilio_notify.py +++ b/sickbeard/notifiers/twilio_notify.py @@ -20,13 +20,12 @@ from __future__ import print_function, unicode_literals -import sickbeard import re -from sickbeard import logger, common -from sickrage.helper.exceptions import ex - +import sickbeard import twilio +from sickbeard import common, logger +from sickrage.helper.exceptions import ex class Notifier(object): diff --git a/sickbeard/numdict.py b/sickbeard/numdict.py index 0696466419145fa7f0fb6fbc7ecf03e2c8969d07..ecf83a7ec21e200b807216cca6f9fa0237f1d252 100644 --- a/sickbeard/numdict.py +++ b/sickbeard/numdict.py @@ -5,7 +5,9 @@ class NumDict - A dict with numeric keys """ from __future__ import print_function, unicode_literals + from collections import MutableMapping + import six diff --git a/sickbeard/nzbSplitter.py b/sickbeard/nzbSplitter.py index 0e93c4181a1e875a8bf9b7b9fdbae2efcb575206..e0af927c2a8c57bf5fe7f5d7f3250bc1ad956f0a 100644 --- a/sickbeard/nzbSplitter.py +++ b/sickbeard/nzbSplitter.py @@ -24,15 +24,16 @@ from __future__ import print_function, unicode_literals import re +from sickbeard import classes, helpers, logger +from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser +from sickrage.helper.encoding import ek, ss +from sickrage.helper.exceptions import ex + try: import xml.etree.cElementTree as ETree except ImportError: import xml.etree.ElementTree as ETree -from sickbeard import logger, classes, helpers -from sickbeard.name_parser.parser import NameParser, InvalidNameException, InvalidShowException -from sickrage.helper.encoding import ek, ss -from sickrage.helper.exceptions import ex def get_season_nzbs(name, url_data, season): diff --git a/sickbeard/nzbget.py b/sickbeard/nzbget.py index 366274e3ebdaf1d229f2a29124106f574bf62814..3d2d3cc6d7ad05449edb931597c8d8d487cd3546 100644 --- a/sickbeard/nzbget.py +++ b/sickbeard/nzbget.py @@ -27,10 +27,7 @@ import sickbeard from sickbeard import logger from sickbeard.common import Quality from sickrage.helper.common import try_int -from six.moves import xmlrpc_client - - -from six.moves import http_client +from six.moves import http_client, xmlrpc_client def sendNZB(nzb, proper=False): # pylint: disable=too-many-locals, too-many-statements, too-many-branches, too-many-return-statements diff --git a/sickbeard/postProcessor.py b/sickbeard/postProcessor.py index ac3487fdf3e8f40686416b5524070f86e0fd45aa..83afdf76779a370a02f3cf7322cf1425532d44c2 100644 --- a/sickbeard/postProcessor.py +++ b/sickbeard/postProcessor.py @@ -28,21 +28,17 @@ import stat import subprocess import adba - import sickbeard +import six from sickbeard import common, db, failed_history, helpers, history, logger, notifiers, show_name_helpers from sickbeard.helpers import verify_freespace from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickrage.helper import glob -from sickrage.helper.common import SUBTITLE_EXTENSIONS, remove_extension, replace_extension +from sickrage.helper.common import remove_extension, replace_extension, SUBTITLE_EXTENSIONS from sickrage.helper.encoding import ek -from sickrage.helper.exceptions import EpisodeNotFoundException, EpisodePostProcessingFailedException, \ - ShowDirectoryNotFoundException, ex +from sickrage.helper.exceptions import EpisodeNotFoundException, EpisodePostProcessingFailedException, ex, ShowDirectoryNotFoundException from sickrage.show.Show import Show - -import six - METHOD_COPY = "copy" METHOD_MOVE = "move" METHOD_HARDLINK = "hardlink" diff --git a/sickbeard/post_processing_queue.py b/sickbeard/post_processing_queue.py index 0f527ba7656cd064d0d8c42e76ddf573337631cc..1f9d7e1a6af31b101a9419b1943e2c75a85cba55 100644 --- a/sickbeard/post_processing_queue.py +++ b/sickbeard/post_processing_queue.py @@ -25,7 +25,7 @@ import traceback import sickbeard from sickbeard import common, config, generic_queue, logger, processTV -from sickbeard.processTV import process_dir, log_helper +from sickbeard.processTV import log_helper, process_dir from sickrage.helper.encoding import ek MANUAL_POST_PROCESS = 120 diff --git a/sickbeard/processTV.py b/sickbeard/processTV.py index d8c74a4f82a9bd7ea2c8fad5526c87114ba544b9..39a03745cf99bbf37bb14db85147832382087b52 100644 --- a/sickbeard/processTV.py +++ b/sickbeard/processTV.py @@ -24,17 +24,15 @@ import os import shutil import stat -from rarfile import RarFile, RarWarning, RarFatalError, RarCRCError, NoRarEntry, NotRarFile, \ - RarLockedArchiveError, RarWriteError, RarOpenError, RarUserError, RarMemoryError, BadRarName, BadRarFile, \ - RarNoFilesError, RarWrongPassword, RarCannotExec, RarSignalExit, RarUnknownError, Error, \ - RarUserBreak, RarCreateError, RarExecError, NoCrypto, NeedFirstVolume, PasswordRequired - import sickbeard +from rarfile import (BadRarFile, BadRarName, Error, NeedFirstVolume, NoCrypto, NoRarEntry, NotRarFile, PasswordRequired, RarCannotExec, RarCRCError, + RarCreateError, RarExecError, RarFatalError, RarFile, RarLockedArchiveError, RarMemoryError, RarNoFilesError, RarOpenError, RarSignalExit, + RarUnknownError, RarUserBreak, RarUserError, RarWarning, RarWriteError, RarWrongPassword) from sickbeard import common, db, failedProcessor, helpers, logger, postProcessor from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickrage.helper.common import is_sync_file, is_torrent_or_nzb_file from sickrage.helper.encoding import ek, ss -from sickrage.helper.exceptions import EpisodePostProcessingFailedException, FailedPostProcessingFailedException, ex +from sickrage.helper.exceptions import EpisodePostProcessingFailedException, ex, FailedPostProcessingFailedException class ProcessResult(object): # pylint: disable=too-few-public-methods diff --git a/sickbeard/properFinder.py b/sickbeard/properFinder.py index 9c71b7c07eb04a74b22b4ccb6a48c93fa92829a5..be97e993afb972872caa52268d4e8c96c2d03702 100644 --- a/sickbeard/properFinder.py +++ b/sickbeard/properFinder.py @@ -29,7 +29,7 @@ import traceback import sickbeard from sickbeard import db, helpers, logger -from sickbeard.common import DOWNLOADED, Quality, SNATCHED, SNATCHED_PROPER, cpu_presets +from sickbeard.common import cpu_presets, DOWNLOADED, Quality, SNATCHED, SNATCHED_PROPER from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickbeard.search import pickBestResult, snatchEpisode from sickrage.helper.exceptions import AuthException, ex diff --git a/sickbeard/providers/abnormal.py b/sickbeard/providers/abnormal.py index 9ee1a399e3e0d3363fc2956dbaf3938d88625c86..21f3a7aca76a98a43246dc826c8177df0dafb92a 100644 --- a/sickbeard/providers/abnormal.py +++ b/sickbeard/providers/abnormal.py @@ -21,12 +21,11 @@ from __future__ import unicode_literals import re + from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/alpharatio.py b/sickbeard/providers/alpharatio.py index 7606c976b82b734ae7467f70b891c00c3b81d08d..73ee672a2d17574545180decf62f0f94b5eca649 100644 --- a/sickbeard/providers/alpharatio.py +++ b/sickbeard/providers/alpharatio.py @@ -19,14 +19,13 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals + import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/archetorrent.py b/sickbeard/providers/archetorrent.py index 26270f81b1f270165b68167ee28384e404b20dc8..51e6c80a2fe795147dffa376d33a8467ad365afa 100644 --- a/sickbeard/providers/archetorrent.py +++ b/sickbeard/providers/archetorrent.py @@ -22,12 +22,11 @@ from __future__ import unicode_literals import re + from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/binsearch.py b/sickbeard/providers/binsearch.py index a1941508d80c9e2efeebadec16a86198bde96972..f9ae5b145ebcc15c8de51f81b3dfdf792757e6ab 100644 --- a/sickbeard/providers/binsearch.py +++ b/sickbeard/providers/binsearch.py @@ -21,10 +21,9 @@ from __future__ import unicode_literals import re -from requests.compat import urljoin +from requests.compat import urljoin from sickbeard import logger, tvcache - from sickrage.providers.nzb.NZBProvider import NZBProvider diff --git a/sickbeard/providers/bitcannon.py b/sickbeard/providers/bitcannon.py index 6a0b5d90c7219efaf4c007ba973e610ab75a42c3..7c01df08f8f178f7d8572c03ae9f347a16b67dfb 100644 --- a/sickbeard/providers/bitcannon.py +++ b/sickbeard/providers/bitcannon.py @@ -20,11 +20,9 @@ from __future__ import unicode_literals -from requests.compat import urljoin import validators - +from requests.compat import urljoin from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/btn.py b/sickbeard/providers/btn.py index 28c31b4186d31092d333ac42b1bed206a88c8fe3..ead42b5249345b4b9ad4854f234130a5b3b75e55 100644 --- a/sickbeard/providers/btn.py +++ b/sickbeard/providers/btn.py @@ -20,18 +20,17 @@ from __future__ import print_function, unicode_literals -from datetime import datetime -import jsonrpclib import math import socket import time +from datetime import datetime +import jsonrpclib import sickbeard +import six from sickbeard import classes, logger, scene_exceptions, tvcache from sickbeard.common import cpu_presets from sickbeard.helpers import sanitizeSceneName -import six - from sickrage.helper.common import episode_num from sickrage.helper.exceptions import AuthException, ex from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/cpasbien.py b/sickbeard/providers/cpasbien.py index b5b9461824c3aa190d86e9152d2ca3483400f0fa..bae40652c5ba1080f66a3d64bec7824a3a72e6cd 100644 --- a/sickbeard/providers/cpasbien.py +++ b/sickbeard/providers/cpasbien.py @@ -24,7 +24,6 @@ import re from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/danishbits.py b/sickbeard/providers/danishbits.py index 21f94cab5f69b09f5d0a4a94c183ce3259b8a84d..f9d831b4dd15c3b0f3d16cfd65a0e02a739d3a5c 100644 --- a/sickbeard/providers/danishbits.py +++ b/sickbeard/providers/danishbits.py @@ -20,11 +20,11 @@ from __future__ import print_function, unicode_literals -from requests.utils import dict_from_cookiejar import json + +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/elitetorrent.py b/sickbeard/providers/elitetorrent.py index 79c95083e7fe1b3eede8dd0401e43772c035d9bf..887ffecaf4c0ac27b5cb9861f5ee5f5c93fd0f11 100644 --- a/sickbeard/providers/elitetorrent.py +++ b/sickbeard/providers/elitetorrent.py @@ -25,11 +25,10 @@ import time import traceback import sickbeard +import six from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickbeard.common import cpu_presets -import six - from sickrage.helper.common import try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/filelist.py b/sickbeard/providers/filelist.py index 692f6f80bbbb500101137fd2c00182c073905318..af1787c9c41115b0798331c522a8c06b7389c084 100644 --- a/sickbeard/providers/filelist.py +++ b/sickbeard/providers/filelist.py @@ -18,14 +18,13 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals + import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/gftracker.py b/sickbeard/providers/gftracker.py index e436ceb8f123e019a4042504e8c47aabb09deb08..e7f66274ca1025254b5e233558132e51dcd6bb57 100644 --- a/sickbeard/providers/gftracker.py +++ b/sickbeard/providers/gftracker.py @@ -23,10 +23,8 @@ from __future__ import print_function, unicode_literals import re from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/hd4free.py b/sickbeard/providers/hd4free.py index c4a0ff279950c3ad453397395699ecc0d7c82fdd..5d96d6c7c83c09fb66ea081b1deeb3e5075263ee 100644 --- a/sickbeard/providers/hd4free.py +++ b/sickbeard/providers/hd4free.py @@ -22,7 +22,6 @@ from __future__ import print_function, unicode_literals from requests.compat import urljoin from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/hdbits.py b/sickbeard/providers/hdbits.py index ad41ad71cfe1f617dbda0d1689f3714ef6af63d6..9eef83b95b03bfd7788bd601fe0597ce7c9acf1e 100644 --- a/sickbeard/providers/hdbits.py +++ b/sickbeard/providers/hdbits.py @@ -20,10 +20,9 @@ from __future__ import print_function, unicode_literals import datetime -from requests.compat import urlencode, urljoin +from requests.compat import urlencode, urljoin from sickbeard import classes, logger, tvcache - from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/hdspace.py b/sickbeard/providers/hdspace.py index 792aa84f1a8edb6002fdd464b2f4c76260b4c1c0..7a63b7170c1c47fbd6368552df1ac856ff2973f8 100644 --- a/sickbeard/providers/hdspace.py +++ b/sickbeard/providers/hdspace.py @@ -22,14 +22,13 @@ from __future__ import print_function, unicode_literals import re -from requests.utils import dict_from_cookiejar -from bs4 import BeautifulSoup +from bs4 import BeautifulSoup +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache -from six.moves.urllib.parse import quote_plus - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider +from six.moves.urllib.parse import quote_plus class HDSpaceProvider(TorrentProvider): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/providers/hdtorrents.py b/sickbeard/providers/hdtorrents.py index 6322271f2ab41668ca74e5114f933d19a43e13f0..6de831554adee3f7535ff18058c391f9fc0b0955 100644 --- a/sickbeard/providers/hdtorrents.py +++ b/sickbeard/providers/hdtorrents.py @@ -21,14 +21,13 @@ from __future__ import print_function, unicode_literals import re -from requests.utils import dict_from_cookiejar +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser -from six.moves.urllib.parse import quote_plus - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider +from six.moves.urllib.parse import quote_plus class HDTorrentsProvider(TorrentProvider): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/providers/hdtorrents_it.py b/sickbeard/providers/hdtorrents_it.py index 2200e4cf2c2948d02d3bf91ef87f8c2e4fed310a..5c430cc93a9e083e8f00777c3865656eb5d38758 100644 --- a/sickbeard/providers/hdtorrents_it.py +++ b/sickbeard/providers/hdtorrents_it.py @@ -21,14 +21,13 @@ from __future__ import print_function, unicode_literals import re -from requests.utils import dict_from_cookiejar +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser -from six.moves.urllib.parse import quote_plus - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider +from six.moves.urllib.parse import quote_plus class HDTorrentsProvider_IT(TorrentProvider): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/providers/horriblesubs.py b/sickbeard/providers/horriblesubs.py index 0ad524f1c6a6929fd22910ca2524d852cd24a7f1..02dc8210020cd544f560d455c9e36c68abf47743 100755 --- a/sickbeard/providers/horriblesubs.py +++ b/sickbeard/providers/horriblesubs.py @@ -22,7 +22,6 @@ from __future__ import print_function, unicode_literals from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/hounddawgs.py b/sickbeard/providers/hounddawgs.py index 60d0d35a02335f2155adee4c90621c78dd5f82bc..6b8b8ebc037fad6391358cd35fafd0d221b49c96 100644 --- a/sickbeard/providers/hounddawgs.py +++ b/sickbeard/providers/hounddawgs.py @@ -22,11 +22,10 @@ from __future__ import print_function, unicode_literals import re import traceback -from requests.utils import dict_from_cookiejar +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/ilcorsaronero.py b/sickbeard/providers/ilcorsaronero.py index c8a8ca396da0001bb48919475ce9010a12a980d6..d81bb12594018ee110bb7d72d9fd3ef79e12e927 100644 --- a/sickbeard/providers/ilcorsaronero.py +++ b/sickbeard/providers/ilcorsaronero.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import re import traceback import urllib @@ -24,8 +26,7 @@ import urllib from sickbeard import db, logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickbeard.common import Quality -from sickbeard.name_parser.parser import NameParser, InvalidNameException, InvalidShowException - +from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider @@ -55,6 +56,7 @@ class ilCorsaroNeroProvider(TorrentProvider): # pylint: disable=too-many-instan TorrentProvider.__init__(self, 'ilCorsaroNero') + self.public = True self._uid = None self._hash = None self.cat = None diff --git a/sickbeard/providers/immortalseed.py b/sickbeard/providers/immortalseed.py index 64c4c649935f3aa15d681257bf126c5122e70900..412766acdee3002ac6d588420226ca48d429b8f2 100755 --- a/sickbeard/providers/immortalseed.py +++ b/sickbeard/providers/immortalseed.py @@ -24,12 +24,10 @@ import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - -from sickrage.helper.exceptions import AuthException from sickrage.helper.common import convert_size, try_int +from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/iptorrents.py b/sickbeard/providers/iptorrents.py index 927ecf2c1fced07b4a5abb76ec1cf2c8342b291d..d3e5a22f750ff9180e53c22562885aac854591fd 100644 --- a/sickbeard/providers/iptorrents.py +++ b/sickbeard/providers/iptorrents.py @@ -25,7 +25,6 @@ import re import validators from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickrage.helper.common import convert_size, try_int diff --git a/sickbeard/providers/kat.py b/sickbeard/providers/kat.py index 471425c7b202c24ec7b8bc8e8a81104d24892be2..996764f5bf6870ded0aeca76e6e1ebff3bac8314 100644 --- a/sickbeard/providers/kat.py +++ b/sickbeard/providers/kat.py @@ -19,13 +19,11 @@ from __future__ import unicode_literals +import sickbeard import validators from requests.compat import urljoin -from sickbeard.bs4_parser import BS4Parser - -import sickbeard from sickbeard import logger, tvcache - +from sickbeard.bs4_parser import BS4Parser from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/limetorrents.py b/sickbeard/providers/limetorrents.py index dbfaa4e2e545018557fee8903c79801336e8f798..b8be2c2e9d7f88f69bcdde0d205f719afc8481ae 100644 --- a/sickbeard/providers/limetorrents.py +++ b/sickbeard/providers/limetorrents.py @@ -22,11 +22,10 @@ from __future__ import print_function, unicode_literals import re import traceback -from bs4 import BeautifulSoup -import sickbeard +import sickbeard +from bs4 import BeautifulSoup from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/morethantv.py b/sickbeard/providers/morethantv.py index 7f090da406914c631b1e035b0c72a98dbf1dddcd..81d6dd063d688dadcdd83bc3791fb20e542d340d 100644 --- a/sickbeard/providers/morethantv.py +++ b/sickbeard/providers/morethantv.py @@ -24,12 +24,10 @@ import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - -from sickrage.helper.exceptions import AuthException from sickrage.helper.common import convert_size, try_int +from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/ncore.py b/sickbeard/providers/ncore.py index 212b60d3ea6983ed3e68a96e9bc7f1d6736645e9..bc8f1f652461a9ab365ce6a5fda3e1bf34c41149 100644 --- a/sickbeard/providers/ncore.py +++ b/sickbeard/providers/ncore.py @@ -14,8 +14,8 @@ from __future__ import print_function, unicode_literals -import re import json +import re from sickbeard import logger, tvcache from sickrage.helper.common import convert_size, try_int diff --git a/sickbeard/providers/nebulance.py b/sickbeard/providers/nebulance.py index 90b6c44877bd1276d34ac642ef2e0cb918f05230..70d88217afffa0404a1f30694cb2d3c29287e5ac 100644 --- a/sickbeard/providers/nebulance.py +++ b/sickbeard/providers/nebulance.py @@ -21,12 +21,11 @@ from __future__ import print_function, unicode_literals import re import traceback -from requests.utils import dict_from_cookiejar -from requests.compat import urljoin +from requests.compat import urljoin +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import try_int from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/newpct.py b/sickbeard/providers/newpct.py index cebbc38e16cc26ed6474013d55bdcb77ab95736c..afe21f2c47db554d0c39446eba902f036ab1575a 100644 --- a/sickbeard/providers/newpct.py +++ b/sickbeard/providers/newpct.py @@ -19,13 +19,12 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import print_function, unicode_literals -from requests.compat import urljoin + import re -from sickbeard import helpers -from sickbeard import logger, tvcache +from requests.compat import urljoin +from sickbeard import helpers, logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/newznab.py b/sickbeard/providers/newznab.py index 6bab2af617b0cbad49e99b41fd300726b3e3a95f..4a1efaac494784d49ac6d98ac9f05b2264c8dbaf 100644 --- a/sickbeard/providers/newznab.py +++ b/sickbeard/providers/newznab.py @@ -19,17 +19,17 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals -from requests.compat import urljoin + import os import re import time -import validators import sickbeard +import validators +from requests.compat import urljoin from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickbeard.common import cpu_presets - from sickrage.helper.common import convert_size, try_int from sickrage.helper.encoding import ek, ss from sickrage.providers.nzb.NZBProvider import NZBProvider diff --git a/sickbeard/providers/norbits.py b/sickbeard/providers/norbits.py index 18185c548e783f8b17e197fcd3be3571c3e48c66..6c762c204b4bc6c277e0aa2b925ae0baecaedc91 100644 --- a/sickbeard/providers/norbits.py +++ b/sickbeard/providers/norbits.py @@ -19,12 +19,11 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import unicode_literals -from requests.compat import urlencode +from requests.compat import urlencode from sickbeard import logger, tvcache - -from sickrage.helper.exceptions import AuthException from sickrage.helper.common import convert_size, try_int +from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider try: diff --git a/sickbeard/providers/nyaa.py b/sickbeard/providers/nyaa.py index e1032345709be0dfb888ca75a5ca44039251dc38..2d2f9507d0085b219938e5fed5711f7908c278ca 100644 --- a/sickbeard/providers/nyaa.py +++ b/sickbeard/providers/nyaa.py @@ -23,7 +23,6 @@ from __future__ import print_function, unicode_literals import re from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider @@ -80,16 +79,10 @@ class NyaaProvider(TorrentProvider): # pylint: disable=too-many-instance-attrib if not all([title, download_url]): continue - try: - seeders = try_int(curItem['nyaa:seeders']) - leechers = try_int(curItem['nyaa:leechers']) - torrent_size = curItem['nyaa:size'] - info_hash = curItem['nyaa:infohash'] - except KeyError: # Transition phase because of https://github.com/nyaadevs/nyaa/pull/140 - seeders = try_int(curItem['seeders']) - leechers = try_int(curItem['leechers']) - torrent_size = curItem['size'] - info_hash = curItem['infohash'] + seeders = try_int(curItem['nyaa_seeders']) + leechers = try_int(curItem['nyaa_leechers']) + torrent_size = curItem['nyaa_size'] + info_hash = curItem['nyaa_infohash'] if seeders < self.minseed or leechers < self.minleech: if mode != 'RSS': diff --git a/sickbeard/providers/omgwtfnzbs.py b/sickbeard/providers/omgwtfnzbs.py index 72b82cfeaddae25d26dc6aba0e02ca61ac189474..52061e8f5713ca197799a0d21bbd0ab9da03c767 100644 --- a/sickbeard/providers/omgwtfnzbs.py +++ b/sickbeard/providers/omgwtfnzbs.py @@ -22,7 +22,6 @@ from __future__ import unicode_literals import sickbeard from sickbeard import logger, tvcache - from sickrage.helper.common import try_int from sickrage.providers.nzb.NZBProvider import NZBProvider diff --git a/sickbeard/providers/pretome.py b/sickbeard/providers/pretome.py index ae6286a6d3336ae3f61dcfb3c2a7e473b830d75e..b91faacdafe32c4d6052661c14119f0c34cd222d 100644 --- a/sickbeard/providers/pretome.py +++ b/sickbeard/providers/pretome.py @@ -22,15 +22,14 @@ from __future__ import print_function, unicode_literals import re import traceback -from requests.utils import dict_from_cookiejar +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser -# noinspection PyUnresolvedReferences -from six.moves.urllib.parse import quote - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider +# noinspection PyUnresolvedReferences +from six.moves.urllib.parse import quote class PretomeProvider(TorrentProvider): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/providers/rarbg.py b/sickbeard/providers/rarbg.py index 3eeff5fa8425fa3c25ac50454ab34017f2d4c12b..1d5034b683630560b407340900f8a178485aadef 100644 --- a/sickbeard/providers/rarbg.py +++ b/sickbeard/providers/rarbg.py @@ -27,7 +27,6 @@ import sickbeard from sickbeard import logger, tvcache from sickbeard.common import cpu_presets from sickbeard.indexers.indexer_config import INDEXER_TVDB - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/rsstorrent.py b/sickbeard/providers/rsstorrent.py index 57e3eef61df891451fa674acbd8a63c03613f85c..5353e2848bd30a7bd0fd3456d366c865bad6eab3 100644 --- a/sickbeard/providers/rsstorrent.py +++ b/sickbeard/providers/rsstorrent.py @@ -23,12 +23,11 @@ from __future__ import unicode_literals import io import os import re -from requests.utils import add_dict_to_cookiejar -import bencode +import bencode import sickbeard +from requests.utils import add_dict_to_cookiejar from sickbeard import helpers, logger, tvcache - from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/scc.py b/sickbeard/providers/scc.py index de20c1640accd6c8da21188be9419fc5ba08c0f3..b569b94452cdea6757236fca55667eb577c7dce3 100644 --- a/sickbeard/providers/scc.py +++ b/sickbeard/providers/scc.py @@ -22,17 +22,16 @@ from __future__ import print_function, unicode_literals import re import time -from requests.compat import urljoin -from requests.utils import dict_from_cookiejar import sickbeard +from requests.compat import urljoin +from requests.utils import dict_from_cookiejar from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickbeard.common import cpu_presets -from six.moves.urllib.parse import quote - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider +from six.moves.urllib.parse import quote class SCCProvider(TorrentProvider): # pylint: disable=too-many-instance-attributes diff --git a/sickbeard/providers/scenetime.py b/sickbeard/providers/scenetime.py index c5f04e0335a7ad15eab7e3a5f31e0c30fc2b490c..5c322d2ddf8e5d345bd89b9dd0f4633025cc33db 100644 --- a/sickbeard/providers/scenetime.py +++ b/sickbeard/providers/scenetime.py @@ -21,7 +21,6 @@ from __future__ import print_function, unicode_literals from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickrage.helper.common import convert_size, try_int diff --git a/sickbeard/providers/shazbat.py b/sickbeard/providers/shazbat.py index 40ed2a1af65d83a57ad1bccca56fcccfa46e230a..875ac518cdb0a7326c33b3eb66f45d9cfe2c12d7 100644 --- a/sickbeard/providers/shazbat.py +++ b/sickbeard/providers/shazbat.py @@ -21,7 +21,6 @@ from __future__ import unicode_literals from requests.compat import urljoin - from sickbeard import logger, tvcache from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/skytorrents.py b/sickbeard/providers/skytorrents.py index 8a760096c1f2b8c4d56dfd48416ca822fc7cfd40..aa2bd61ec783aa38645fc201a9e678c9a917dfdc 100644 --- a/sickbeard/providers/skytorrents.py +++ b/sickbeard/providers/skytorrents.py @@ -19,13 +19,12 @@ from __future__ import unicode_literals -import feedparser import re + +import feedparser import validators from requests.compat import urljoin - from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/speedcd.py b/sickbeard/providers/speedcd.py index f0ed4726f21521b090f89fb6ea85780b28add151..34086dda82ddf0da7701134c95a7dd91200af8c7 100644 --- a/sickbeard/providers/speedcd.py +++ b/sickbeard/providers/speedcd.py @@ -24,10 +24,8 @@ import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/t411.py b/sickbeard/providers/t411.py index 041229db835e4d39dccd86635c3b157e1741a6d9..24f67b0c94d912a2870b0cbd32a5b0f5ec2cb1a0 100644 --- a/sickbeard/providers/t411.py +++ b/sickbeard/providers/t411.py @@ -20,14 +20,13 @@ from __future__ import print_function, unicode_literals -from requests.auth import AuthBase -import six import time import traceback +import six +from requests.auth import AuthBase from sickbeard import logger, tvcache -from sickrage.helper.common import try_int -from sickrage.helper.common import convert_size +from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/thepiratebay.py b/sickbeard/providers/thepiratebay.py index 4a5b9fa35a4cb2d19bbe25b9f631511bdac8a774..27d624e5f0f87c5f10d05b57e2e172cbc40ef037 100644 --- a/sickbeard/providers/thepiratebay.py +++ b/sickbeard/providers/thepiratebay.py @@ -21,12 +21,11 @@ from __future__ import unicode_literals import re + import validators from requests.compat import urljoin - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/tntvillage.py b/sickbeard/providers/tntvillage.py index 95626a3f188f067bcf3e4dbc9808ed6f565b0a28..31c68966fea230d44b39a34503daacec2a91b506 100644 --- a/sickbeard/providers/tntvillage.py +++ b/sickbeard/providers/tntvillage.py @@ -26,8 +26,7 @@ import traceback from sickbeard import db, logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickbeard.common import Quality -from sickbeard.name_parser.parser import NameParser, InvalidNameException, InvalidShowException - +from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickrage.helper.common import convert_size, try_int from sickrage.helper.exceptions import AuthException from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/tokyotoshokan.py b/sickbeard/providers/tokyotoshokan.py index 954c28029f1c783cfd4a0f2729279c5eee9d4e5b..f65c192af2f0b08cdb5cfe7c0350142f8f8d6c85 100644 --- a/sickbeard/providers/tokyotoshokan.py +++ b/sickbeard/providers/tokyotoshokan.py @@ -24,7 +24,6 @@ import re from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/torrent9.py b/sickbeard/providers/torrent9.py index 80b61d659d18c17123b5cf6d45fc77c4b1544603..58fa1fd85b28c545c63c1671d826b784a772aa3a 100644 --- a/sickbeard/providers/torrent9.py +++ b/sickbeard/providers/torrent9.py @@ -24,7 +24,6 @@ import re from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/torrentbytes.py b/sickbeard/providers/torrentbytes.py index 170a28af039dbd53fd98c98d56ca8c9b7b347048..8aa4d38aeabe9c3aa030d934ee8fa06ad6025666 100644 --- a/sickbeard/providers/torrentbytes.py +++ b/sickbeard/providers/torrentbytes.py @@ -24,7 +24,6 @@ import re from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser from sickrage.helper.common import convert_size, try_int diff --git a/sickbeard/providers/torrentday.py b/sickbeard/providers/torrentday.py index 8fba9d455d0077472eac39c40cad3ce70bc2271f..bcf37b6f7fbfa19beb990919d3bc2b8dd2892f82 100644 --- a/sickbeard/providers/torrentday.py +++ b/sickbeard/providers/torrentday.py @@ -21,12 +21,11 @@ from __future__ import unicode_literals import re + +import validators from requests.compat import urljoin from requests.utils import dict_from_cookiejar -import validators - from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/torrentleech.py b/sickbeard/providers/torrentleech.py index bdf960d1788a909cc65abf4898f821e0ab0f5e07..91d0f23450fa0dd4e6d545489d3e57f0ca60aa43 100644 --- a/sickbeard/providers/torrentleech.py +++ b/sickbeard/providers/torrentleech.py @@ -21,12 +21,11 @@ from __future__ import unicode_literals import re + from requests.compat import urljoin from requests.utils import dict_from_cookiejar - from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/torrentproject.py b/sickbeard/providers/torrentproject.py index c2562bfa5131bd0c045802703cde8ec22b0ef4a4..0f6d31295620afc5c6529a882311edf575710d4c 100644 --- a/sickbeard/providers/torrentproject.py +++ b/sickbeard/providers/torrentproject.py @@ -21,9 +21,7 @@ from __future__ import print_function, unicode_literals import validators - from sickbeard import logger, tvcache - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/torrentz.py b/sickbeard/providers/torrentz.py index 995254f7aed01b4f2fbe85233a817581a7e11c21..016dc79f4c0e556ac7c00e8f29ed213403922c1e 100644 --- a/sickbeard/providers/torrentz.py +++ b/sickbeard/providers/torrentz.py @@ -25,7 +25,6 @@ import traceback from sickbeard import logger, tvcache from sickbeard.bs4_parser import BS4Parser - from sickrage.helper.common import convert_size, try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/providers/tvchaosuk.py b/sickbeard/providers/tvchaosuk.py index fce7831df0f3e7b9fdb054883944676f68274b27..51d2d30f4655d84cdfde0e406f9d8fd2b6b59e08 100644 --- a/sickbeard/providers/tvchaosuk.py +++ b/sickbeard/providers/tvchaosuk.py @@ -18,6 +18,7 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import print_function, unicode_literals + import re from sickbeard import logger, tvcache diff --git a/sickbeard/providers/xthor.py b/sickbeard/providers/xthor.py index cd63143df82e717c9bba8c92fdf2e1d13f6bf61a..a55e82b89bb3cfe0898679fda2a90559cc36a3e4 100644 --- a/sickbeard/providers/xthor.py +++ b/sickbeard/providers/xthor.py @@ -21,7 +21,6 @@ from __future__ import print_function, unicode_literals from sickbeard import logger, tvcache - from sickrage.helper.common import try_int from sickrage.providers.torrent.TorrentProvider import TorrentProvider diff --git a/sickbeard/rssfeeds.py b/sickbeard/rssfeeds.py index 979694777e20c659d3ff9de255a83ddf62f9c393..5d8f7d22f582c30c0065dcdf9fd4fb8acf72d336 100644 --- a/sickbeard/rssfeeds.py +++ b/sickbeard/rssfeeds.py @@ -2,7 +2,6 @@ from __future__ import print_function, unicode_literals from feedparser.api import parse - from sickbeard import logger from sickrage.helper.exceptions import ex diff --git a/sickbeard/sab.py b/sickbeard/sab.py index e2dd536f2d9985973a27d680e6870b1abbd41f9e..f6e256d7d1c362cdc0bf6104567c5a18ccb1928d 100644 --- a/sickbeard/sab.py +++ b/sickbeard/sab.py @@ -22,9 +22,8 @@ from __future__ import unicode_literals import datetime -from requests.compat import urljoin - import sickbeard +from requests.compat import urljoin from sickbeard import helpers, logger session = helpers.make_session() diff --git a/sickbeard/sbdatetime.py b/sickbeard/sbdatetime.py index c279efa1b5356f76240e1038088774db2b2a6894..1dbefdb8bacf29811b90d36a4da73d1c2b3f44b2 100644 --- a/sickbeard/sbdatetime.py +++ b/sickbeard/sbdatetime.py @@ -18,6 +18,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import datetime import functools import locale diff --git a/sickbeard/scene_exceptions.py b/sickbeard/scene_exceptions.py index c7ca1f5e73b3dac08d6fef6fe107ed934a0cf8d7..2880d0fc54b47fa428004a5a100b359227e4d30d 100644 --- a/sickbeard/scene_exceptions.py +++ b/sickbeard/scene_exceptions.py @@ -25,9 +25,8 @@ import threading import time import adba -import six - import sickbeard +import six from sickbeard import db, helpers, logger from sickbeard.indexers.indexer_config import INDEXER_TVDB diff --git a/sickbeard/search.py b/sickbeard/search.py index dcd4d7fc10248f2fd8c03d77dd593bf707ce4ec3..613ab5997c7cc308ad499178599eff555ca2c998 100644 --- a/sickbeard/search.py +++ b/sickbeard/search.py @@ -27,8 +27,7 @@ import threading import traceback import sickbeard -from sickbeard import clients, common, db, failed_history, helpers, history, logger, notifiers, nzbSplitter, nzbget, \ - sab, show_name_helpers, ui +from sickbeard import clients, common, db, failed_history, helpers, history, logger, notifiers, nzbget, nzbSplitter, sab, show_name_helpers, ui from sickbeard.common import MULTI_EP_RESULT, Quality, SEASON_RESULT, SNATCHED, SNATCHED_BEST, SNATCHED_PROPER from sickrage.helper.encoding import ek from sickrage.helper.exceptions import AuthException, ex diff --git a/sickbeard/searchBacklog.py b/sickbeard/searchBacklog.py index 61f32160e477900c2fd601a9dbd1d748f0fa2fb0..cfdb3b6b61e82aeb443d69674c04b5454af939de 100644 --- a/sickbeard/searchBacklog.py +++ b/sickbeard/searchBacklog.py @@ -23,10 +23,8 @@ import datetime import threading import sickbeard -from sickbeard import common, db, logger, scheduler, search_queue, ui - - import six +from sickbeard import common, db, logger, scheduler, search_queue, ui class BacklogSearchScheduler(scheduler.Scheduler): diff --git a/sickbeard/search_queue.py b/sickbeard/search_queue.py index c81ceacbc3008ed524c0b7f0531104eb4afa821d..332c007c9bc09a9a9a892b424bcc065153e2ba49 100644 --- a/sickbeard/search_queue.py +++ b/sickbeard/search_queue.py @@ -18,6 +18,7 @@ # along with SickRage. If not, see <http://www.gnu.org/licenses/>. from __future__ import print_function, unicode_literals + import time import traceback diff --git a/sickbeard/showUpdater.py b/sickbeard/showUpdater.py index 34e603440ef489d1bc93dab0cc956e78a17d26b3..9a87011017b5fbe022c8e8daf2b45e4c194eb55f 100644 --- a/sickbeard/showUpdater.py +++ b/sickbeard/showUpdater.py @@ -19,19 +19,21 @@ from __future__ import unicode_literals +import datetime +import threading +import time + +import sickbeard +from sickbeard import db, helpers, logger, network_timezones, ui +from sickbeard.indexers.indexer_config import INDEXER_TVDB, INDEXER_TVRAGE +from sickrage.helper.exceptions import CantRefreshShowException, CantUpdateShowException, ex + try: import xml.etree.cElementTree as etree except ImportError: import xml.etree.ElementTree as etree -import time -import datetime -import threading -import sickbeard -from sickbeard import logger, ui, db, network_timezones, helpers -from sickbeard.indexers.indexer_config import INDEXER_TVRAGE, INDEXER_TVDB -from sickrage.helper.exceptions import CantRefreshShowException, CantUpdateShowException, ex class ShowUpdater(object): # pylint: disable=too-few-public-methods diff --git a/sickbeard/show_name_helpers.py b/sickbeard/show_name_helpers.py index e8ad23bf4a26d7160f961d2b222be7c0f97063e4..d0a9a40ba7309d388911fac18151b3b9b5fe8d9b 100644 --- a/sickbeard/show_name_helpers.py +++ b/sickbeard/show_name_helpers.py @@ -24,14 +24,12 @@ import os import re import sickbeard +import six from sickbeard import common, logger from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickbeard.scene_exceptions import get_scene_exceptions from sickrage.helper.encoding import ek -import six - - resultFilters = [ "sub(bed|ed|pack|s)", "(dir|sub|nfo)fix", diff --git a/sickbeard/show_queue.py b/sickbeard/show_queue.py index efbecba535e5ed516186ba8549011972041566cd..39ba26b259e54c9463a2d16a6ffbf98c89720018 100644 --- a/sickbeard/show_queue.py +++ b/sickbeard/show_queue.py @@ -19,14 +19,14 @@ from __future__ import unicode_literals -from collections import namedtuple import os import traceback +from collections import namedtuple +import sickbeard +import six from imdb import _exceptions as imdb_exceptions from libtrakt import TraktAPI - -import sickbeard from sickbeard import generic_queue, logger, name_cache, notifiers, ui from sickbeard.blackandwhitelist import BlackAndWhiteList from sickbeard.common import WANTED @@ -34,14 +34,11 @@ from sickbeard.helpers import chmodAsParent, get_showname_from_indexer, makeDir, from sickbeard.tv import TVShow from sickrage.helper.common import sanitize_filename from sickrage.helper.encoding import ek -from sickrage.helper.exceptions import CantRefreshShowException, CantRemoveShowException, CantUpdateShowException, \ - EpisodeDeletedException, MultipleShowObjectsException, ShowDirectoryNotFoundException +from sickrage.helper.exceptions import (CantRefreshShowException, CantRemoveShowException, CantUpdateShowException, EpisodeDeletedException, + MultipleShowObjectsException, ShowDirectoryNotFoundException) from sickrage.show.Show import Show -import six - - class ShowQueue(generic_queue.GenericQueue): def __init__(self): super(ShowQueue, self).__init__() diff --git a/sickbeard/subtitles.py b/sickbeard/subtitles.py index 269c9c5c174e0c69301f6f3b84e4a55969cc4900..0ac190f4202a4d3e17100181bfe21d2afa1a8b03 100644 --- a/sickbeard/subtitles.py +++ b/sickbeard/subtitles.py @@ -28,19 +28,18 @@ import subprocess import threading import traceback +import sickbeard import six import subliminal from babelfish import Language, language_converters from guessit import guessit -from subliminal import Episode, ProviderPool, provider_manager - -import sickbeard from sickbeard import db, history, logger from sickbeard.common import Quality from sickbeard.helpers import is_media_file from sickrage.helper.common import dateTimeFormat, episode_num from sickrage.helper.exceptions import ex from sickrage.show.Show import Show +from subliminal import Episode, provider_manager, ProviderPool # https://github.com/Diaoul/subliminal/issues/536 # provider_manager.register('napiprojekt = subliminal.providers.napiprojekt:NapiProjektProvider') diff --git a/sickbeard/traktChecker.py b/sickbeard/traktChecker.py index a728312ccd12ded6f3d68509420c073f4f94b13d..2cb650c5a0bd0c10b86a5afcb35ccb2c9f3e1255 100644 --- a/sickbeard/traktChecker.py +++ b/sickbeard/traktChecker.py @@ -23,10 +23,9 @@ import datetime import os import traceback +import sickbeard from libtrakt import TraktAPI from libtrakt.exceptions import traktException - -import sickbeard from sickbeard import db, helpers, logger, search_queue from sickbeard.common import Quality, SKIPPED, UNKNOWN, WANTED from sickrage.helper.common import episode_num, sanitize_filename diff --git a/sickbeard/traktTrending.py b/sickbeard/traktTrending.py index 54682c4438e4c0b6733489bdc2555ab01b07e1b9..ccae94d1ea8fbe67e0947629d9a1aa44245dd8d8 100644 --- a/sickbeard/traktTrending.py +++ b/sickbeard/traktTrending.py @@ -5,10 +5,9 @@ from __future__ import print_function, unicode_literals import os import posixpath -from libtrakt.trakt import TraktAPI -from libtrakt.exceptions import traktException - import sickbeard +from libtrakt.exceptions import traktException +from libtrakt.trakt import TraktAPI from sickbeard import helpers, logger from sickbeard.indexers.indexer_config import INDEXER_TVDB from sickrage.helper.encoding import ek diff --git a/sickbeard/tv.py b/sickbeard/tv.py index 80c9c71f86443084acb1a5a3bd371e2678986ecc..12d937ed590bcbfc6e7e202f3161f5643b888db9 100644 --- a/sickbeard/tv.py +++ b/sickbeard/tv.py @@ -23,10 +23,27 @@ from __future__ import unicode_literals import datetime import os.path import re +import shutil import stat import threading import traceback +import sickbeard +import six +from imdb import imdb +from sickbeard import db, helpers, image_cache, logger, network_timezones, notifiers, postProcessor, subtitles +from sickbeard.blackandwhitelist import BlackAndWhiteList +from sickbeard.common import (ARCHIVED, DOWNLOADED, FAILED, IGNORED, NAMING_DUPLICATE, NAMING_EXTEND, NAMING_LIMITED_EXTEND, NAMING_LIMITED_EXTEND_E_PREFIXED, + NAMING_SEPARATED_REPEAT, Overview, Quality, SKIPPED, SNATCHED, SNATCHED_PROPER, statusStrings, UNAIRED, UNKNOWN, WANTED) +from sickbeard.indexers.indexer_config import INDEXER_TVRAGE +from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser +from sickrage.helper import glob +from sickrage.helper.common import dateTimeFormat, episode_num, remove_extension, replace_extension, sanitize_filename, try_int +from sickrage.helper.encoding import ek +from sickrage.helper.exceptions import (EpisodeDeletedException, EpisodeNotFoundException, ex, MultipleEpisodesInDatabaseException, + MultipleShowObjectsException, MultipleShowsInDatabaseException, NoNFOException, ShowDirectoryNotFoundException, + ShowNotFoundException) +from sickrage.show.Show import Show from unidecode import unidecode try: @@ -39,38 +56,6 @@ try: except ImportError: pass -from imdb import imdb - -import sickbeard -from sickbeard import db -from sickbeard import helpers, logger -from sickbeard import image_cache -from sickbeard import notifiers -from sickbeard import postProcessor -from sickbeard import subtitles -from sickbeard.blackandwhitelist import BlackAndWhiteList -from sickbeard import network_timezones -from sickbeard.indexers.indexer_config import INDEXER_TVRAGE -from sickbeard.name_parser.parser import NameParser, InvalidNameException, InvalidShowException - -from sickrage.helper import glob -from sickrage.helper.common import dateTimeFormat, remove_extension, replace_extension, sanitize_filename, try_int, episode_num -from sickrage.helper.encoding import ek -from sickrage.helper.exceptions import EpisodeDeletedException, EpisodeNotFoundException, ex -from sickrage.helper.exceptions import MultipleEpisodesInDatabaseException, MultipleShowsInDatabaseException -from sickrage.helper.exceptions import MultipleShowObjectsException, NoNFOException, ShowDirectoryNotFoundException -from sickrage.helper.exceptions import ShowNotFoundException -from sickrage.show.Show import Show - -from sickbeard.common import Quality, Overview, statusStrings -from sickbeard.common import DOWNLOADED, SNATCHED, SNATCHED_PROPER, ARCHIVED, IGNORED, UNAIRED, WANTED, SKIPPED, \ - UNKNOWN, FAILED -from sickbeard.common import NAMING_DUPLICATE, NAMING_EXTEND, NAMING_LIMITED_EXTEND, NAMING_SEPARATED_REPEAT, \ - NAMING_LIMITED_EXTEND_E_PREFIXED - -import shutil -import six - def dirty_setter(attr_name): def wrapper(self, val): diff --git a/sickbeard/tvcache.py b/sickbeard/tvcache.py index 65da27111633a024cd86ca072e64734ad2cc8c07..a5632473a30bd8c81f9a37fc2c784c8bc9996579 100644 --- a/sickbeard/tvcache.py +++ b/sickbeard/tvcache.py @@ -24,6 +24,7 @@ import itertools import time import sickbeard +import six from sickbeard import db, logger, show_name_helpers from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickbeard.rssfeeds import getFeed @@ -31,9 +32,6 @@ from sickrage.helper.exceptions import AuthException, ex from sickrage.show.Show import Show -import six - - class CacheDBConnection(db.DBConnection): def __init__(self, provider_name): super(CacheDBConnection, self).__init__('cache.db') diff --git a/sickbeard/ui.py b/sickbeard/ui.py index f893b1e333a5eb0734186bcd1c6ecd02eb5bceea..66be33ebdc29be10f171ff7e759a64623f73469a 100644 --- a/sickbeard/ui.py +++ b/sickbeard/ui.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + import datetime import sickbeard diff --git a/sickbeard/versionChecker.py b/sickbeard/versionChecker.py index 47cbd0c7644f036ca06fab72fc7b04dfb1fd74c8..903ec5e6a67f186cd2a46bee341fb3e952ec5593 100644 --- a/sickbeard/versionChecker.py +++ b/sickbeard/versionChecker.py @@ -31,12 +31,11 @@ import time import traceback import sickbeard +import six from sickbeard import db, helpers, logger, notifiers, ui from sickrage.helper.encoding import ek from sickrage.helper.exceptions import ex -import six - class CheckVersion(object): """ diff --git a/sickbeard/webapi.py b/sickbeard/webapi.py index 11186b2402d04d74bf4fb29b2b4b82c412135e41..c2bcee5d843b5a4e0bf16a83a59d6cd6c116817e 100644 --- a/sickbeard/webapi.py +++ b/sickbeard/webapi.py @@ -32,15 +32,15 @@ import time import traceback import sickbeard -from sickbeard import classes, db, helpers, image_cache, logger, network_timezones, sbdatetime, search_queue, \ - ui -from sickbeard.common import ARCHIVED, DOWNLOADED, FAILED, IGNORED, Overview, Quality, SKIPPED, SNATCHED, \ - SNATCHED_PROPER, UNAIRED, UNKNOWN, WANTED, statusStrings -from sickbeard.versionChecker import CheckVersion +import six +from sickbeard import classes, db, helpers, image_cache, logger, network_timezones, sbdatetime, search_queue, ui +from sickbeard.common import (ARCHIVED, DOWNLOADED, FAILED, IGNORED, Overview, Quality, SKIPPED, SNATCHED, SNATCHED_PROPER, statusStrings, UNAIRED, UNKNOWN, + WANTED) from sickbeard.postProcessor import PROCESS_METHODS +from sickbeard.versionChecker import CheckVersion from sickrage.helper.common import dateFormat, dateTimeFormat, pretty_file_size, sanitize_filename, timeFormat, try_int from sickrage.helper.encoding import ek -from sickrage.helper.exceptions import CantUpdateShowException, ShowDirectoryNotFoundException, ex +from sickrage.helper.exceptions import CantUpdateShowException, ex, ShowDirectoryNotFoundException from sickrage.helper.quality import get_quality_string from sickrage.media.ShowBanner import ShowBanner from sickrage.media.ShowFanArt import ShowFanArt @@ -51,6 +51,10 @@ from sickrage.show.History import History from sickrage.show.Show import Show from sickrage.system.Restart import Restart from sickrage.system.Shutdown import Shutdown +# noinspection PyUnresolvedReferences +from six.moves import urllib +# pylint: disable=import-error +from tornado.web import RequestHandler try: import json @@ -58,13 +62,8 @@ except ImportError: # pylint: disable=import-error import simplejson as json -# pylint: disable=import-error -from tornado.web import RequestHandler -import six -# noinspection PyUnresolvedReferences -from six.moves import urllib indexer_ids = ["indexerid", "tvdbid"] diff --git a/sickbeard/webserve.py b/sickbeard/webserve.py index a986b64a703ad4dba8c0d87be4263f6acf47f10c..2ac752de13740612a2f92e8382c078bd03febac2 100644 --- a/sickbeard/webserve.py +++ b/sickbeard/webserve.py @@ -27,63 +27,41 @@ import os import re import time import traceback -try: - import json -except ImportError: - import simplejson as json - -from requests.compat import urljoin -import markdown2 - -from mako.template import Template as MakoTemplate -from mako.lookup import TemplateLookup -from mako.exceptions import RichTraceback -from mako.runtime import UNDEFINED - -from mimetypes import guess_type - -from operator import attrgetter - -from tornado.routes import route -from tornado.web import RequestHandler, StaticFileHandler, HTTPError, authenticated -from tornado.gen import coroutine -from tornado.ioloop import IOLoop -from tornado.process import cpu_count -from tornado.concurrent import run_on_executor - # noinspection PyCompatibility from concurrent.futures import ThreadPoolExecutor +from mimetypes import guess_type +from operator import attrgetter -from dateutil import tz import adba +import markdown2 +import sickbeard +import six +from dateutil import tz from libtrakt import TraktAPI from libtrakt.exceptions import traktException - -import sickbeard -from sickbeard import config, sab, clients, notifiers, ui, logger, \ - helpers, classes, db, search_queue, naming, subtitles as subtitle_module, \ - network_timezones -from sickbeard.providers import newznab, rsstorrent -from sickbeard.common import Quality, Overview, statusStrings, cpu_presets, \ - SNATCHED, UNAIRED, IGNORED, WANTED, FAILED, SKIPPED, NAMING_LIMITED_EXTEND_E_PREFIXED - +from mako.exceptions import RichTraceback +from mako.lookup import TemplateLookup +from mako.runtime import UNDEFINED +from mako.template import Template as MakoTemplate +from requests.compat import urljoin +from sickbeard import classes, clients, config, db, helpers, logger, naming, network_timezones, notifiers, sab, search_queue, subtitles as subtitle_module, ui from sickbeard.blackandwhitelist import BlackAndWhiteList, short_group_names from sickbeard.browser import foldersAtPath -from sickbeard.scene_numbering import get_scene_numbering, set_scene_numbering, get_scene_numbering_for_show, \ - get_xem_numbering_for_show, get_scene_absolute_numbering_for_show, get_xem_absolute_numbering_for_show, \ - get_scene_absolute_numbering - -from sickbeard.webapi import function_mapper +from sickbeard.common import (cpu_presets, FAILED, IGNORED, NAMING_LIMITED_EXTEND_E_PREFIXED, Overview, Quality, SKIPPED, SNATCHED, statusStrings, UNAIRED, + WANTED) +from sickbeard.helpers import get_showname_from_indexer from sickbeard.imdbPopular import imdb_popular +from sickbeard.providers import newznab, rsstorrent +from sickbeard.scene_numbering import (get_scene_absolute_numbering, get_scene_absolute_numbering_for_show, get_scene_numbering, get_scene_numbering_for_show, + get_xem_absolute_numbering_for_show, get_xem_numbering_for_show, set_scene_numbering) from sickbeard.traktTrending import trakt_trending -from sickbeard.helpers import get_showname_from_indexer from sickbeard.versionChecker import CheckVersion - -from sickrage.helper import setup_github, episode_num, try_int, sanitize_filename +from sickbeard.webapi import function_mapper +from sickrage.helper import episode_num, sanitize_filename, setup_github, try_int from sickrage.helper.common import pretty_file_size from sickrage.helper.encoding import ek, ss -from sickrage.helper.exceptions import CantRefreshShowException, CantUpdateShowException, ex -from sickrage.helper.exceptions import MultipleShowObjectsException, NoNFOException, ShowDirectoryNotFoundException +from sickrage.helper.exceptions import (CantRefreshShowException, CantUpdateShowException, ex, MultipleShowObjectsException, NoNFOException, + ShowDirectoryNotFoundException) from sickrage.media.ShowBanner import ShowBanner from sickrage.media.ShowFanArt import ShowFanArt from sickrage.media.ShowNetworkLogo import ShowNetworkLogo @@ -94,13 +72,21 @@ from sickrage.show.History import History as HistoryTool from sickrage.show.Show import Show from sickrage.system.Restart import Restart from sickrage.system.Shutdown import Shutdown - -import six - # noinspection PyUnresolvedReferences from six.moves import urllib # noinspection PyUnresolvedReferences from six.moves.urllib.parse import unquote_plus +from tornado.concurrent import run_on_executor +from tornado.gen import coroutine +from tornado.ioloop import IOLoop +from tornado.process import cpu_count +from tornado.routes import route +from tornado.web import authenticated, HTTPError, RequestHandler, StaticFileHandler + +try: + import json +except ImportError: + import simplejson as json mako_lookup = {} diff --git a/sickbeard/webserveInit.py b/sickbeard/webserveInit.py index c604d4abac30633e0052e074612dc2793f02aeeb..76ae2b5c71e157ff10955e018a02ba2d73e5a343 100644 --- a/sickbeard/webserveInit.py +++ b/sickbeard/webserveInit.py @@ -4,11 +4,7 @@ from __future__ import print_function, unicode_literals import os import threading -from socket import error as SocketError, errno - -from tornado.ioloop import IOLoop -from tornado.routes import route -from tornado.web import Application, RedirectHandler, StaticFileHandler +from socket import errno, error as SocketError import sickbeard from sickbeard import logger @@ -16,6 +12,9 @@ from sickbeard.helpers import create_https_certificates, generateApiKey from sickbeard.webapi import ApiHandler from sickbeard.webserve import CalendarHandler, KeyHandler, LoginHandler, LogoutHandler from sickrage.helper.encoding import ek +from tornado.ioloop import IOLoop +from tornado.routes import route +from tornado.web import Application, RedirectHandler, StaticFileHandler class SRWebServer(threading.Thread): # pylint: disable=too-many-instance-attributes diff --git a/sickrage/helper/common.py b/sickrage/helper/common.py index 87cfd451eeae2f33ff276aca90967fd677ad5b4c..9d61f69e01c8eacbf643442bbabf35b1985df160 100644 --- a/sickrage/helper/common.py +++ b/sickrage/helper/common.py @@ -23,15 +23,14 @@ Common helper functions from __future__ import print_function, unicode_literals +import glob import os import re -import glob from fnmatch import fnmatch -from github import Github, BadCredentialsException, TwoFactorException -import six - import sickbeard +import six +from github import BadCredentialsException, Github, TwoFactorException dateFormat = '%Y-%m-%d' dateTimeFormat = '%Y-%m-%d %H:%M:%S' diff --git a/sickrage/helper/encoding.py b/sickrage/helper/encoding.py index cd2300105f0589b70d27b4f38ac521052dcaf230..b13fc39d3ebe06802f646bb1db50b26aa7972035 100644 --- a/sickrage/helper/encoding.py +++ b/sickrage/helper/encoding.py @@ -18,13 +18,13 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals -from chardet import detect from os import name - +import sickbeard import six +from chardet import detect def ek(function, *args, **kwargs): diff --git a/sickrage/helper/exceptions.py b/sickrage/helper/exceptions.py index 42f18d864b7bdae6034a4a15eddcf7dda66c490d..ad88e7db951ba341ad4f176e7c8226494960acba 100644 --- a/sickrage/helper/exceptions.py +++ b/sickrage/helper/exceptions.py @@ -19,10 +19,8 @@ from __future__ import print_function, unicode_literals -from sickrage.helper.encoding import ss - - import six +from sickrage.helper.encoding import ss def ex(e): diff --git a/sickrage/helper/media_info.py b/sickrage/helper/media_info.py index f6f2f9fc28d6506ecb07e64c7ea433bab9701e6e..02edf21a61158fd3728e94403870de8a3fa3746f 100644 --- a/sickrage/helper/media_info.py +++ b/sickrage/helper/media_info.py @@ -20,15 +20,14 @@ from __future__ import print_function, unicode_literals -import io import binascii -from enzyme import MKV +import io -from pkg_resources import get_distribution, DistributionNotFound -import sickbeard +from pkg_resources import DistributionNotFound, get_distribution +import sickbeard import six - +from enzyme import MKV try: get_distribution('pymediainfo') diff --git a/sickrage/helper/quality.py b/sickrage/helper/quality.py index 49b1fce186801b7babf2632988162bd93c10835e..355a8900dd3cf5fa85ea4b9dd22a9fab2a223a13 100644 --- a/sickrage/helper/quality.py +++ b/sickrage/helper/quality.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard.common import Quality, qualityPresetStrings diff --git a/sickrage/media/GenericMedia.py b/sickrage/media/GenericMedia.py index 2d2fb4dde4e442c19ddc80807d0398b086dd47d2..7492b09a311187d7df5ac9a35aa29e3dcc5aaae4 100644 --- a/sickrage/media/GenericMedia.py +++ b/sickrage/media/GenericMedia.py @@ -17,11 +17,13 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals from abc import abstractmethod from mimetypes import guess_type from os.path import isfile, join, normpath + +import sickbeard from sickrage.helper.common import try_int from sickrage.helper.encoding import ek from sickrage.helper.exceptions import MultipleShowObjectsException diff --git a/sickrage/media/ShowBanner.py b/sickrage/media/ShowBanner.py index fccf7d888e454dec12d314401b94adc4c0bb0115..8a8da94875fb672cdbc77c7ee590cb8bbabfdae5 100644 --- a/sickrage/media/ShowBanner.py +++ b/sickrage/media/ShowBanner.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard.image_cache import ImageCache from sickrage.media.GenericMedia import GenericMedia diff --git a/sickrage/media/ShowFanArt.py b/sickrage/media/ShowFanArt.py index 4376f1ddd49e3fb59965f2196b5e223739fd798d..da289a5f13a60f74e123bada10630c4dceca7dd0 100644 --- a/sickrage/media/ShowFanArt.py +++ b/sickrage/media/ShowFanArt.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard.image_cache import ImageCache from sickrage.media.GenericMedia import GenericMedia diff --git a/sickrage/media/ShowNetworkLogo.py b/sickrage/media/ShowNetworkLogo.py index 58034e2dd1251cefc8fd50da44981b99bbaf3891..5d29be307e00bed4e89f16171c07ad12e120bf54 100644 --- a/sickrage/media/ShowNetworkLogo.py +++ b/sickrage/media/ShowNetworkLogo.py @@ -17,7 +17,10 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from os.path import join + from sickrage.helper.encoding import ek from sickrage.media.GenericMedia import GenericMedia diff --git a/sickrage/media/ShowPoster.py b/sickrage/media/ShowPoster.py index 2b6b01c9e0ae9fe6a3ad7c085d29a8f81c527de6..535ca7c68aaa3cd39b18b3bad3aaa8e46b026b23 100644 --- a/sickrage/media/ShowPoster.py +++ b/sickrage/media/ShowPoster.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. +from __future__ import unicode_literals + from sickbeard.image_cache import ImageCache from sickrage.media.GenericMedia import GenericMedia diff --git a/sickrage/providers/GenericProvider.py b/sickrage/providers/GenericProvider.py index de2edb1a277d85391b55d12703cb21831757d933..b61575f60e59aa657925a995b5090a4f75e55769 100644 --- a/sickrage/providers/GenericProvider.py +++ b/sickrage/providers/GenericProvider.py @@ -20,26 +20,25 @@ from __future__ import print_function, unicode_literals import re -from datetime import datetime - from base64 import b16encode, b32decode +from datetime import datetime from itertools import chain from os.path import join from random import shuffle -import six import sickbeard +import six +from requests.utils import add_dict_to_cookiejar from sickbeard import logger from sickbeard.classes import Proper, SearchResult from sickbeard.common import MULTI_EP_RESULT, Quality, SEASON_RESULT, UA_POOL from sickbeard.db import DBConnection -from sickbeard.helpers import download_file, getURL, remove_file_failed, make_session +from sickbeard.helpers import download_file, getURL, make_session, remove_file_failed from sickbeard.name_parser.parser import InvalidNameException, InvalidShowException, NameParser from sickbeard.show_name_helpers import allPossibleShowNames from sickbeard.tvcache import TVCache from sickrage.helper.common import replace_extension, sanitize_filename from sickrage.helper.encoding import ek -from requests.utils import add_dict_to_cookiejar class GenericProvider(object): # pylint: disable=too-many-instance-attributes diff --git a/sickrage/providers/nzb/NZBProvider.py b/sickrage/providers/nzb/NZBProvider.py index 47d49d422e5e2be0b9432a3e026ad01bb0aaa6fd..8fd2aceb42f955b1c2abe4e48014332704a1d53b 100644 --- a/sickrage/providers/nzb/NZBProvider.py +++ b/sickrage/providers/nzb/NZBProvider.py @@ -20,11 +20,9 @@ from __future__ import print_function, unicode_literals import sickbeard - from sickbeard import logger from sickbeard.classes import NZBSearchResult from sickrage.helper.common import try_int - from sickrage.providers.GenericProvider import GenericProvider diff --git a/sickrage/providers/subtitle/itasa.py b/sickrage/providers/subtitle/itasa.py index d0e8c256ea7e62ab0c503d1dc0c91b575dceb529..a82dc6f5e94affb71b9f7d3227aa4bac9adaccad 100644 --- a/sickrage/providers/subtitle/itasa.py +++ b/sickrage/providers/subtitle/itasa.py @@ -1,11 +1,22 @@ # -*- coding: utf-8 -*- +from __future__ import unicode_literals + import copy import io import logging import re +from zipfile import is_zipfile, ZipFile from babelfish import Language from guessit import guessit +from requests import Session +from subliminal import __version__ +from subliminal.cache import EPISODE_EXPIRATION_TIME, region, SHOW_EXPIRATION_TIME +from subliminal.exceptions import AuthenticationError, ConfigurationError, TooManyRequests +from subliminal.providers import Provider +from subliminal.subtitle import fix_line_ending, guess_matches, sanitize, Subtitle +from subliminal.video import Episode + try: from lxml import etree except ImportError: # pragma: no cover @@ -14,15 +25,7 @@ except ImportError: # pragma: no cover except ImportError: import xml.etree.ElementTree as etree -from requests import Session -from zipfile import ZipFile, is_zipfile -from subliminal.providers import Provider -from subliminal import __version__ -from subliminal.cache import EPISODE_EXPIRATION_TIME, SHOW_EXPIRATION_TIME, region -from subliminal.exceptions import AuthenticationError, ConfigurationError, TooManyRequests -from subliminal.subtitle import (Subtitle, fix_line_ending, guess_matches, sanitize) -from subliminal.video import Episode logger = logging.getLogger(__name__) diff --git a/sickrage/providers/subtitle/subscenter.py b/sickrage/providers/subtitle/subscenter.py index e8818f5fb763be11fe3726c8b67592de725c3b48..bb67acda5e903a3f0baae5279f991796830d18de 100644 --- a/sickrage/providers/subtitle/subscenter.py +++ b/sickrage/providers/subtitle/subscenter.py @@ -1,20 +1,21 @@ # -*- coding: utf-8 -*- +from __future__ import unicode_literals + import bisect -from collections import defaultdict import io import json import logging import zipfile +from collections import defaultdict from babelfish import Language from guessit import guessit from requests import Session - -from subliminal.providers import ParserBeautifulSoup, Provider from subliminal import __short_version__ -from subliminal.cache import SHOW_EXPIRATION_TIME, region +from subliminal.cache import region, SHOW_EXPIRATION_TIME from subliminal.exceptions import AuthenticationError, ConfigurationError, ProviderError -from subliminal.subtitle import Subtitle, fix_line_ending, guess_matches +from subliminal.providers import ParserBeautifulSoup, Provider +from subliminal.subtitle import fix_line_ending, guess_matches, Subtitle from subliminal.utils import sanitize from subliminal.video import Episode, Movie diff --git a/sickrage/providers/torrent/TorrentProvider.py b/sickrage/providers/torrent/TorrentProvider.py index b3a161a7b01cd7d7a49f2c7bca68d491a636e02f..4800ca51c5fe188d188451ca7096779bf20f9cf4 100644 --- a/sickrage/providers/torrent/TorrentProvider.py +++ b/sickrage/providers/torrent/TorrentProvider.py @@ -19,17 +19,15 @@ from __future__ import unicode_literals - from datetime import datetime -from feedparser.util import FeedParserDict -from hachoir_parser import createParser import sickbeard +from feedparser.util import FeedParserDict +from hachoir_parser import createParser from sickbeard import logger from sickbeard.classes import Proper, TorrentSearchResult from sickbeard.common import Quality from sickbeard.db import DBConnection - from sickrage.helper.common import try_int from sickrage.helper.exceptions import ex from sickrage.providers.GenericProvider import GenericProvider diff --git a/sickrage/recompiled/tags.py b/sickrage/recompiled/tags.py index 4871deed22d76155d87fd0fe6ce4dca648700f9e..fd5fde974379f1819a3a0a48a8ab1c585e337835 100644 --- a/sickrage/recompiled/tags.py +++ b/sickrage/recompiled/tags.py @@ -1,7 +1,8 @@ # coding=utf-8 -import re +from __future__ import unicode_literals +import re # Resolutions resolution = [ diff --git a/sickrage/show/ComingEpisodes.py b/sickrage/show/ComingEpisodes.py index 6eca678ec0c40219b513b4471c078e3769b2527a..ca6bc8303c5db97051885f43b992eacf4c092c68 100644 --- a/sickrage/show/ComingEpisodes.py +++ b/sickrage/show/ComingEpisodes.py @@ -17,16 +17,18 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals from datetime import date, timedelta -from sickbeard.common import WANTED, UNAIRED, Quality +from operator import itemgetter + +import sickbeard +from sickbeard.common import Quality, UNAIRED, WANTED from sickbeard.db import DBConnection from sickbeard.network_timezones import parse_date_time from sickbeard.sbdatetime import sbdatetime from sickrage.helper.common import dateFormat, timeFormat from sickrage.helper.quality import get_quality_string -from operator import itemgetter SNATCHED = Quality.SNATCHED + Quality.SNATCHED_PROPER + Quality.SNATCHED_BEST # type = list diff --git a/sickrage/show/History.py b/sickrage/show/History.py index e1f1b145ff3ed8377a95d5a7f9612ccb00c46bda..ec311c890bcda7e76480299cf5d4015e5ba317be 100644 --- a/sickrage/show/History.py +++ b/sickrage/show/History.py @@ -17,14 +17,14 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -from datetime import datetime -from datetime import timedelta -from sickbeard.common import Quality -from sickbeard.db import DBConnection -from sickrage.helper.common import try_int +from __future__ import unicode_literals +from datetime import datetime, timedelta import six +from sickbeard.common import Quality +from sickbeard.db import DBConnection +from sickrage.helper.common import try_int class History(object): diff --git a/sickrage/show/Show.py b/sickrage/show/Show.py index e213106e6561d82bdd59e17e4af26835a72180d4..88aa56eb4b2096eda68313ae01f81773e3d898e7 100644 --- a/sickrage/show/Show.py +++ b/sickrage/show/Show.py @@ -17,13 +17,14 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals from datetime import date + +import sickbeard from sickbeard.common import Quality, SKIPPED, WANTED from sickbeard.db import DBConnection -from sickrage.helper.exceptions import CantRefreshShowException, CantRemoveShowException, ex -from sickrage.helper.exceptions import MultipleShowObjectsException +from sickrage.helper.exceptions import CantRefreshShowException, CantRemoveShowException, ex, MultipleShowObjectsException class Show(object): diff --git a/sickrage/show/recommendations/anidb.py b/sickrage/show/recommendations/anidb.py index 7954cf8fb8224675e1c2499e127e6fcfc9a248be..10eef9753a2e3df7a909c76c83828905ac88956d 100644 --- a/sickrage/show/recommendations/anidb.py +++ b/sickrage/show/recommendations/anidb.py @@ -1,11 +1,12 @@ # coding=utf-8 +from __future__ import unicode_literals + from anidbhttp import anidbquery from anidbhttp.query import QUERY_HOT +from recommended import RecommendedShow from sickbeard import helpers from sickrage.helper.common import try_int -from recommended import RecommendedShow - class AnidbPopular(object): def __init__(self): diff --git a/sickrage/show/recommendations/imdb.py b/sickrage/show/recommendations/imdb.py index 16c9d492eeab35dd88d88cd7b967e3f60a08c115..c098af316d8678b3cf473b7d7827932e02c21743 100644 --- a/sickrage/show/recommendations/imdb.py +++ b/sickrage/show/recommendations/imdb.py @@ -2,13 +2,13 @@ from __future__ import print_function, unicode_literals -import re import os import posixpath -from bs4 import BeautifulSoup +import re from datetime import date import sickbeard +from bs4 import BeautifulSoup from sickbeard import helpers from sickrage.helper.encoding import ek diff --git a/sickrage/show/recommendations/recommended.py b/sickrage/show/recommendations/recommended.py index 93cee1546321e868806bb9fc35cc98051e0c4ab5..8530f87f49a4dbcbc7be03856f93d84e7bcb4c5d 100644 --- a/sickrage/show/recommendations/recommended.py +++ b/sickrage/show/recommendations/recommended.py @@ -28,7 +28,6 @@ import posixpath import sickbeard from sickbeard import helpers - from sickrage.helper.encoding import ek diff --git a/sickrage/system/Restart.py b/sickrage/system/Restart.py index 399e909535fd64f79dc4533ffef34d2b2ccbc6a7..b0fb22850a1ae5a2fb750e0193faa06540d05408 100644 --- a/sickrage/system/Restart.py +++ b/sickrage/system/Restart.py @@ -17,8 +17,9 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals +import sickbeard from sickbeard.event_queue import Events diff --git a/sickrage/system/Shutdown.py b/sickrage/system/Shutdown.py index 813bea5a582daf4b494948baa3b29aa124fa9b81..3b4c7def0b1b920d7014a48bc36661296ca8f79e 100644 --- a/sickrage/system/Shutdown.py +++ b/sickrage/system/Shutdown.py @@ -17,8 +17,9 @@ # You should have received a copy of the GNU General Public License # along with SickRage. If not, see <http://www.gnu.org/licenses/>. -import sickbeard +from __future__ import unicode_literals +import sickbeard from sickbeard.event_queue import Events diff --git a/sickrage/tagger/episode.py b/sickrage/tagger/episode.py index b11a7f5a8ff3530737750bea18fe39eb484698f0..7f881fbbbe58222c801f930b145a8b7ede41e98b 100644 --- a/sickrage/tagger/episode.py +++ b/sickrage/tagger/episode.py @@ -7,8 +7,9 @@ Episode tagger to extract information from episodes from __future__ import print_function, unicode_literals import re -from sickrage.recompiled import tags + from sickrage.helper.common import try_int +from sickrage.recompiled import tags class EpisodeTags(object): diff --git a/tests/sickrage_tests/providers/torrent/cassettes/kickasstorrents.yaml b/tests/sickrage_tests/providers/torrent/cassettes/kickasstorrents.yaml deleted file mode 100644 index 1731f5196eeeb2423ff0b2acbe62c5ffb299a565..0000000000000000000000000000000000000000 --- a/tests/sickrage_tests/providers/torrent/cassettes/kickasstorrents.yaml +++ /dev/null @@ -1,427 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) - Gecko/20120101 Firefox/29.0'] - method: GET - uri: https://kat.cr/usearch/?q=Game+of+Thrones+S05E08&field=seeders&rss=1&category=tv&sorder=desc - response: - body: - string: !!binary | - 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 - headers: - cache-control: [public] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/rss+xml; charset=utf-8] - date: ['Mon, 04 Apr 2016 17:31:49 GMT'] - server: [nginx] - set-cookie: [country_code=US; Path=/;] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-xss-protection: ['1'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - Cookie: [country_code=US] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) - Gecko/20120101 Firefox/29.0'] - method: GET - uri: https://kat.cr/tv/?q=&field=time_add&rss=1&category=tv&sorder=desc - response: - body: - string: !!binary | - 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 - headers: - cache-control: [public] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/rss+xml; charset=utf-8] - date: ['Mon, 04 Apr 2016 17:31:49 GMT'] - server: [nginx] - set-cookie: [country_code=US; Path=/;] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-xss-protection: ['1'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - Cookie: [country_code=US] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) - Gecko/20120101 Firefox/29.0'] - method: GET - uri: https://kat.cr/anime/?q=&field=time_add&rss=1&category=tv&sorder=desc - response: - body: - string: !!binary | - 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 - headers: - cache-control: [public] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/rss+xml; charset=utf-8] - date: ['Mon, 04 Apr 2016 17:31:49 GMT'] - server: [nginx] - set-cookie: [country_code=US; Path=/;] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-xss-protection: ['1'] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - Cookie: [country_code=US] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) - Gecko/20120101 Firefox/29.0'] - method: GET - uri: https://kat.cr/usearch/?q=Game+of+Thrones+S05&field=seeders&rss=1&category=tv&sorder=desc - response: - body: - string: !!binary | - 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 - headers: - cache-control: [public] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/rss+xml; charset=utf-8] - date: ['Mon, 04 Apr 2016 17:33:00 GMT'] - server: [nginx] - set-cookie: ['lang_detected=none; expires=Tue, 04-Apr-2017 17:31:50 GMT; Max-Age=31536000; - path=/; domain=.kat.cr', 'lang_code=en; expires=Tue, 04-Apr-2017 17:31:50 - GMT; Max-Age=31536000; path=/; domain=.kat.cr', country_code=US; Path=/;] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-xss-protection: ['1'] - status: {code: 200, message: OK} -version: 1 diff --git a/tests/sickrage_tests/providers/torrent/cassettes/nyaa.yaml b/tests/sickrage_tests/providers/torrent/cassettes/nyaa.yaml index c5df6b8df51bc62609ca66901f80bf9512307180..2126c725a8d0b63890e0a91ea088f42310a0453e 100644 --- a/tests/sickrage_tests/providers/torrent/cassettes/nyaa.yaml +++ b/tests/sickrage_tests/providers/torrent/cassettes/nyaa.yaml @@ -5,195 +5,142 @@ interactions: Accept: ['*/*'] Accept-Encoding: [!!python/unicode 'gzip,deflate'] Connection: [keep-alive] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 - (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36'] + User-Agent: [!!python/unicode 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) + AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36'] method: GET uri: https://nyaa.si/?s=id&c=1_0&page=rss&o=desc&f=0 response: body: string: !!binary | - H4sIAAAAAAAAA7ybXW8b15nHr51PcaICCwcpyXOe85w3rqzCsmM7cGR7TSMtShDFmfMiTUXOCDOk - ZfnKBhq0aXLhbjfb14tdoIu2SBogQAu0KIJ+l3UV29+iGMp23LQactgRbwTODIea4f83z8v/PNws - ypLcm4yzsm+n+eTCxt50etDv9Q4PD7uHvJsXuz2gVPQuTvPJBrkbijLNswsb0KUbW6+d23R7NsvC - eOu1c+c2p+l0HLZuHFlL7uRFEbIpuZKOA7k9GGz2Tg5Wb/OhdEV6ME3zbOv2YECuhOBJzAtyLZ+E - zd6rh6u3j9Nsf6u6qLLf62VH1nbLtLfZm++ujldX3a+2yF4R4sn1v/rWbxzY3XChKMsNUoTxhY0y - jOMGmR4dhAsb9uBgnDpb/a9eUZZv3puMN0hv/rHpNEyqFy9u6/GDR8e/+u3T//3wi0efPP3Lo8cP - fjQ8fu83Tx9++Ozjn37x/gfkzl4g19Ns99++xs2/l+TiXTu1xWhI9Wj45NMHf/38x6Mho5reGg13 - buHole/jtFu8m4bDngFUkvWmJ1/nl3d97tzm7iz1JC1vhWJi30mz/Qsb02IWNuo+Z7NXnfT8/INZ - ctlOw9bATr9OgJIde0SAMkUo7wvVR006lFK62XvxxtdOzitD8KEot4Te7L14/fw2QnB780Nis/dy - 4+SYzw+zcW59uQVis/fl1snRNIv5NVvubQWKNKqAUYHxNHAeEiWNSgAxKCu8pdZF7e1m7+Upc42c - nYbdvDh622+x7/DN3ivbf3d862KWTgLpkBt51nkr2x2n5V5nWtisHNtp8F+eeHJamd4PW4phF8hO - ur3Zm29XdPRe4PEPnAx38vz+/RRG5HoeSJaT63Zq3V5KOmQnv5sG8ia5k+/PpiEj25cbYUBbwoAu - jQE3faALMMBTKeCa1WDAaihQCQ8WuJVoUCojtQOXeOO8jYZFw1kEb71OainAJSi4bQ//qeRMdSW5 - 2ljxq3aS2Erz7Xy2Pxe4s33zW6RD7rxL3jyRv4niwrSjuDBNFKdygeJwquKG1whOawR3jCvraMKY - dgqciEogJGiE9sYx6xmNjiKaMxNc0K5ZQfCLE2snlkxz8nZm788m9oXWg1uNhNYtCa2XF1r3cZHQ - 7FShGacrKq2YTiJn2kjHGQrGBGqonnfmglAJ91qhDIGe3aONXbGC0lV6v2oLHzKSR/LNvPAlGZLr - eUHeDUWXjF4J7w21Vy1pr5poD2Jl7Q1bUXqtBTdAY5BIGZUeEY0R3AM3FgJTThmJISbrzO2MdtkK - NOzYo5xc2kv309dXfOJlS6rL5VVXfYGrP/EMV5SdqWhoYDZhYFyI4B0yTNA6qhgFa5xOjLCJOrsn - nnfVChpfs0d2Oq/grubTfH/2Orl58TK5lI/HwVUNA+nMdzRWXrSkvGiiPOOLlBen13F1sZ7xGuml - RWO9SzCJhjHnOUgwwARwER2GIK0xzKizC/a8ydPN5WTyD1X7YJaUjeTFluTFpeUF7HO1QF56qrpK - rFqz+SghCMed8iah3hgePUVnEhVE4gPzKK2tur0acWEJcZcN5aC7hlxfVu35p9++OiJXihDup9ku - OX8pnxyMwzSQQSjSUL5BKOswIEMF9GBEhs+vo0JiRIbfDEnn8jsjMrxVhpnPR2R4O4yDLcN2OnV7 - jRp8wVtihjdiBlZOBrBq9Zdwp9EKLyO3UlipI7fOCOXAB4uC6sgU06DWxYxs0uZtBzstUhc6t+1h - OSJvpbv2q9FiuH35dnpAmAF6j1EuyT2QSK68c/FSMyCgJSBgaSAY9mGh43MW/QACCGm4stwoNL6C - QCiFAaJBGZyRIK0XZ1gdmCb9QAMGQNN7Uq2MQEumn2BNEGBq/TFBWDCCBo0OI0ipQbmAnitrDRM+ - MRSFDRHP0OyhXb08AS/zxp3DNCMXs90wLsl2Eew+6RBFhpXu31JAFyWMzt+li+5k/24jPFoyA8Xy - ZiDFvvgXIkRdDVmbMqwz1CeCewc0ehMCpyaGCKhQu0RYAdxF6teVMrhkXbq8G/wSl0G4GzKykxdT - OyaDNCtJh4h14YItOYm4vJNIWZ8uMhnU6dGkbgGhzjqOlnHPtJYQmfbcaGd1lMikYYgBlDdGJ8Yn - a8NFVfmlOS430uy7llxNizG5ODkgAzuZFTYlO7achoLADU86hPO18dOSQYnLGpTQF3QxP3wlflgd - PwyUE9QBpVzTkCQJ18IoBYzLaJIAETA6vsCfbJEfTVeKNreK9KBIK4uqc2nPVl6FXJUVMrwLjUoX - bMnRRLU0LMj7gq4MS11uknWVCwUueaBAleXKgaHgmHYhsBCkjEFH66UMbG0dsKRNFiqv5UWRJuNQ - WRwjsj22k/D6cxO7QyglQ9T0oHmoaMnZRLm0+oB9XORsAsjT9a8azlMJ4LzO4hImOskCY1oIRGc4 - ugCJRAdaoZUSFIJRwq6to1W6VQbm3kdjBlryOFE0YoAtqk7N6TYYaFFboUpR28Iwo5mRLCoAhcJ7 - zkwELhVEylUAa6MMbG2BQBvRpOhYCEE1uLICBS1ZoYhNKFhohSLWWd11uUCrumzgnUiE0MYFSakx - 1eyKTRQoCyZhDpiyQibBr83bgia+xsvCYTufjy9k+bzGHARbzlc69NoqzZZ8D2RLQ0NFH9SZFA+m - btJJBxeNND5YJ7TkLEiWKM1ACY8sgNYmuvkIzZqKB6q6evmYcXlW2Mzb8UnMuB0ym86nXmYVLVQ9 - Lx4aKd+SpYHLWhqsChcgV145YSsvnAjkniaATAlGgaHXWjvPlU+otU4lXHsj17oOrlkXWxR/XjU0 - EZ+3ZFBws7z4fHHV2L74MRiZgLVaIQUOIDxiiCgZRbQopQmUCbkgS7Q9BAGmwaP/+MGjp5998vSz - T774yf8d//D7x7/7yfGfPnryh+89fvAjoEySat///P7J+z8gxx989OSjj///p+8Nnz342fGDD/76 - x/9+8tGHT37+vae//s+njz4nPXL8y988e/Czr+5//PDHjx9+erL38cNPn7z//Wc/f+/xw4/Js1/8 - +fjzz8j1Kj2VYd+mle++b6e2nE1SkqVkUhUtIzLcfvuq+M6TPz189vF/jV6UL41wbMnv4HppHOkS - BSyrSUOmBkisczwkVRQgYcZqq9EEl6BBm0gfIquGbhMTROISuVYimzjyt2ZHtopEr4/I9s0bN0/+ - DKAKReJ5KBpK1FxIA43rEd6SmcGXNTNoX2BfLHK+amavV6xHRPQAMgrHvYuokyocMeutjMIE1CpY - aoQMa8VANWpjdtJpKEdksJdmu2F/Hhu27Z6dzKakQ95Ni900I4N8Nj7JUefnUeHrRNJ4UL7RGIuW - XA4ul8YCTR/MAixO9zj0qoaoji4gB8W0iUInDLilIJRjvipeORM0ESxxcl11qmDVmMfSUGzbo5Mh - nhH5j5nNyLf3UnLV5mSwl8/I+X/6o403nhcxL7reA2xERkveBxdLkwGqTxc2MFhjf9X2vHUtr1SR - SgtUMiYgCG2iNFKIaKgQkVoWNOe2ylrrYQMVdNUKbvl2KMpQ7JPzVQFTyQ/05dTPzmw8TTsnne61 - t969NCLDeyDFiAwPTgZ/GoeOlmwRjksDwqrluEW1hamZ/ayrLWoXb6MQQgHwwE1UinLJGI86gnSC - JsojWosg1raawlB3eVuAnMSHsyCkpXkwzpcnBPqwcERUr9QNYV3VoSm3yGRC0VBuuFTIua9+8QPS - h1DNBaNQ4MPaTDOEJuttgytv3Xw+CvSVKaDz25fJ/Pd+X87/vNGIgZZGwDgszwDtw6IooaHGO62b - AJJ11ml0nAvrFU9E4DJGhjLxFGwE4BYgoQqNRenObATIdGEFr5RRSu4EW90wuWVLZ8f/yjpr4yjR - klPK2dKEUNlnZmWnlK7YmUTUiBQ181oCehQYpAsCDESkGJ32AROv1laBAjc1FejfAAAA//8ipXtq - Ae+eGpgYGbq6uZGeCKg0aGpsQHwiMLYyJZQIDHEPnBmTuxDMOMnI3MgC1JAwszQwSUyySDYzTEo0 - MTW2MAT1SAws0yySDFMT6bc1GAAAAP//1F1Lb11JEf4rhwUSSMSqqn5755uJZ9CIiRV7hkfkRXVX - 9+Tmce/o2p5RZoFm9iA2LGCH2MOCLfBniHjs+Auo7YgoJO57+uTkSCwteWGpP1dXf6/T/UB9ZTm/ - urza5eEu72RYXYk8L+vPH10OP1lSaKGZGFcKPchBO9lB2MofYet2yYpTNJZCDkIorHN24DIWioo0 - Fi+iU2a/2AvW4YGdrM5uN9tY+c87g/FTlVmaid4kP/7sab9Dh2gSq+Va/gwJhcnFkBVLUK6SnSLi - xUqxGQJHsSXbFJZLqdiOw//Hb373z1//+cU3v/jXt3968e0f//7X37/45pf/s2leQ2CoD48BIa4v - B3OAR0d3u/AwE8lJrgcPe1cJ3fCHNvksTc1yAdQ5F4eUoPiYgqdowGkXXRCEUApkClotJ7wivINb - 4/V5MMmuQzORmWR7jn8vI0Fu0jhAaF0GqUiBkhkk+iQus8ESohG5Jja5GHFGoVlMdndmtrtgkl2P - ZqIraTxdWbVXNz2O2mIrq7/49qMPRpM45ZQojco5E4gVSg7JYbQeXcmFZbHAotI9//anvNmsN0+2 - m+0jfl3k+Pj59nGVNuilsLE6RbyJHzmCSj+Ym9vh6Oju93vZbJqJrKS3k5XHu/UPBgyv4FFFebM/ - rTwtZ1L/iNufFy5ijaB5SKk4nSxJQmNNzkE0Ka0tSCxA7y+GZNX0UXCyW5/c+L3Xd2ol13dqLwHY - yQviTAwkqdHHXptn9sWLFE7Tt6B58CpFTiWDpVg4sTLJGSikyBhVrOKoCyu9nG/P2R6OeiQOpi0G - M5GQRONhYPZrWVZN07IImlQ0ZSwulypt+lDYYc2XeQGwwBJElUwp6+Xy7Fb30Eyv4wABvvuSk7xz - kTcXef1u82AmrpGwCwhquqjZngdNe16tH/IUjOMsJWmnyRUSDS5kQQMcvOHiacl5ALPjYNo8mIlt - JBgPA3VI+4oK7O0PBWy+FIJtS1NUOCl0iVhrZOURMiQuScQXUGID6eiWnAdm9nth0qMBZ+IOMYzH - AR3qfaYomihh+xZdwD5qUjY6h1SQohirKNhcAnAEVyxRcdaUBR+MNPs0mIaCmVhE9D0o2LskNmiD - lkfSt56OZCBmzmTrLlAP33Nm5UwsxtpAiJGcB1nsTnBdq8H9k4/Ph4efrNd3LvgZv63i6PoXu3qO - cCbKEN3ow0c6RJw+AtqR4NYLIXmNFCCyZpHCmMBDKcFZjCk6jqgiis6LCQio9IEf33R0cnJSPQrn - w+nVF3k3YLh8NNzNm8ur3fNhtX0+nPETfsa7qwHvUBcEZqIN0Y6GAIRDpSeXCrSkx9Z/vyjDQWlT - mwNI6sugFCrF56iU9+CkaPDRqvdGDegDGG9PuP/o+cVLT8rbrLBvGmHPVqev0UX6mikavqResghn - 4hLRjAQEHRp/qPbJCAS3q9HVlnK7KcE0e2u8BMguJdTswEPIyVqJoFJJpRSVhUtS6N8fKpTrCe2c - rU5fwmLFT662mxuL0mvnfqMfHXValXAmjhD16GPXNbs1eQ600t6tmC9jDil5bx2ACEdA74Kv7TTW - Y8IgjIja5/c4BzpKin/M63J1PhzzZf73X371YU1sDfd3knfDz4fj9e7i8r8/PVx9MFQMHB1V7yJ9 - AM4c3/P9++BMpCGq0ThQtP912Kismlp9KD5WM1IJOgtkZyVispxiBGARZaIvpqCTJa0odKDHY+PW - XXBCVgpnIgmRRh874f6yOgwNVsC2VgFDLUOBR6uttTmXHFMKuiST0KZYrLUUORSjilIxLeZ57ym3 - Xa2Oz4fV1cX26joA8Xg7/KgeO3+Znz5d82Z98exl9uHsszoRvhhOP10NPzw7On94fKRAHx/d7Z4K - MBNXAGE0PNAcwt6mY5wkLlOLQebgU3DeezQFBZXooKp4xJE5W9JA2RfQacmxoHxPH8gp5ye82f7t - t38YPtp+VXvtH/D6Ig88rLa72pFaC6nKbp03clCe8mVN2H12//Ts+MHwvaNn/PV2c2NH6dofYCYe - AcbyCHhowv72ez17XxCbnBWi1yZqSxoBYlQxgo4lAVCk6kcKYdFrQ2M4wPeIDz0DPmaiGsD14ENN - x0eLaWjFqSJojUaLuKAN6pSzp2Syq44UoZgFldcq4KL4ANWhRvbjQ82Aj5l4CLA9+HiHtlya2jem - AkCAAEZAu+CAi0gK0QZMWitOJom2qSyKj67ugH580Az4mImWANODj3cISuDE92khgJDYo0EU78gZ - bWPUJtUgP6BSuZSslv14lgqqg6ToxwfOgI+Z+AvQXfiY3leoJ94vTiDnZJEdSooZUDxFSKKKCpxr - rIac6KSW3T9Uh6rZjw+YAR8z8RqgxuPD7+9anrZ/tN4vEDxnDcUHU4LY5JKzQTylFJwoKImUVyJ+ - 2flhemqpzh7zTrY3auebiczrXvYbu/wa4aQ/lQkzcR1Ao6FAsJ/qxEZyAtuWKN0aGEzZhaB18ArR - 6iJigQwZH71QKMEViZJhMe079Hyu4aOfnn66Or9Yb4ZPeMOXF1cVDGe8/pqr6v0z3nyed9snVw/B - nN/0BdXvcr4KX/WKHzCTRQpwNDSqILoPGteNhlM+0xmagnjJkhKHoIPWGFNw7JMHFyQWV7ypHaha - XXdqLlga1Gel74DHh6t3BcdMximAHnDsJ8Go8fXO1pYRWo0xYCNQzVoZtlwAgNipkpQljCZDjsko - 4Rj/L7Fx27joQIMN81CiNoTxaMAR5UGm8fk308ztGtNMXLEqgFpygVCcB1PQZCZJ2ZmkTIzWFo45 - LAsI6hFP9yHijQnRhQc/Ex58Dx72PlCpkb9DbZsG29ZWka1hkx1ZD0mJoI45BHI569qcTbFoMtYs - PR+oy3R/DYeHq3sPTu89+Higm+98v/sWYYObCQquBwp7Lwrb6ExufxkSA7Yoi3opGCgarbXsVfKF - nPMGVUaDxjgdsnIsy2LB21FPjv8AAAD//8xdS24bRxDd5xSTXYDAcXdXf6oJwwAlSrFhy0FC2A4g - aFH9cwayOcKQhA7hWyQXyDaL3Ca+R9AUE9uJ1ZymR4T3s6uH6apXr94rYuFzWwZt9UhIGM5qcjZR - uwR2UhQeCVZCgi6eXyk0QkUB0jLDrFAewWahOM/O+tkFhidlKJlDA6FCZvl8djNzPns/c96YqJ9v - 8+CQNT9v5VV174MaCQpDCUy2mTrF/ua4Yt+wWKVFUsk4KXIUYEoec76GVoETWuVAOiu1R384E/Xh - xkDvfvv9rz/evvvz16PZ4/kPVQWWIxV4IAPJ7WYDyvcuMOyrnInCUmAec74HZ0ll3xtGnJjzmqOW - hrnISN2daM6wGqunD7x7ZuvFq9gtssvwLFLbXHfNWbfq3sR+0wte042U4hWtVrHt182M+m7dXFLz - PbUhLu418+uuzwosWnV9Sx+dY52fMgNHFnStukJbGAk5MBg50k74Ts1V6ZUoqfBBlVgHZbySXGhw - GIPmiBA4gDFJWeIq+iAYmOAP2i1IVWWd/gGi5rdwD+9di/MXx3GxXPd0cX7Mp+r0RBzVY0SMhBEx - HCNmwnZ7RBU2YKXpAsodpeGQjOIaLKIm1EElYk6CYyJFE4NGD44ddMkBUGU7+aTvlu3yonnULuiy - a551q7iFxVSpE3lyYusxwEbCABuMgSzPZHvbWJfM4or6vGi8iCiDYkI77/OTAoYMiKCCccJwJWW0 - 7qBLcqgS2Zy//KVdXsV+Fen/eeRbre7VVqv947RekqdxJL4BcTAY+Gc5Bxa5p9JUkWw06LSwECU3 - 0tmUQgL0YGw+2qFABlHKwyquanJ5nsbuivqwFe7/twcptCDN4396kH9bkObTPchP05ef8AyR+9iF - aByJvkAzGFlMTWDXYajC23luq4tSYFkS5HDvJcuW+caSMD54LxMGhwyisI6c99xHKe/wMMjIGqpi - Ol+c5ryWe8d9zBBYfthtNOfsxGqYsvrXBUeaX3Do/II5JGFngL3YL424RGVzyMdfLsVoARlFnTOc - YojJy+zjZYGCgLTD0Hp0ia+pMQg4mp29uGimzbx9HRer5kXX+th88/Ezky2un7Zv2lUMzUloV223 - qMLDSFMJwmA8SJwos5PQLmy7Sr8BYcpBXhLBch7JMyNT4hQigIkQoiPPcwqMUYF9ISPtaY4qP+7n - 66P1PKdSt5fULtf9unlCITuJ6e/UzVha/xcYac5AMbzqA0Km98twKibmaGKeK1SSGCFZ4YOO2Rme - 2+CUDDJojUYddPltWZVr0CAU3NDWlSDgI4GADwcB220NwfYaNIpbbs51ZNKi5jYpbZngPAjjCYN0 - xIMQNmjhzGHF2rKGi3h++u3Fo5x4Qpfr5oy69eYm7Os8Y/TtVVOb4KdxpCET2eDag5pIeyeHHKUZ - 0zqS6EFKSFG7DfeEmPkF4ZgUqBlREBt3ky/0/m9H5Wvj+7QZSdFgbE3ld0a9ir0kksXKW++5VVFL - Yzmz0jtPISrw4I3gEX3SFNJh95Vwa1jag/vZ62cRXz/86sH9frl8+DcAAAD//wMA9zmvvu2bAAA= + H4sIAAAAAAAAA9SbWW/c1hXHn+1PcaMChYx2Zu6+TGUVo8VW4lhWNbbSRhgId5UIzZACyZGsPFl2 + kAVJELcBirYpiqYpggbI9hCgTdcPM1GUfIuCI8lR4hghFaaevg3JQ4qkfjjnf//ncCbNMnB70I+z + ts6TweWprTzfabdae3t7zT3STNLNFoaQtTp5Mpg6CYz3tT4OzNqtVrHVzKLW+Nh4awrs+jSLkvjy + FG7CqdmLF2bslo5j35+9eOHCTB7lfT+7vK81uJmkqY9zcCXqe7Da7c60jg8WYc5nNo128iiJZ1e7 + XXDFewdCkoKlZOBnWmcPF+H9KN6e/fo9zbTGu4vjxdO1iy2wlfrw8O3/dEdv+stplk2B1PcvT2W+ + H6ZAvr/jL0/pnZ1+ZHXxt1pplv3o9qA/BVrjy0a5HxQ/Th9r/cbWftZY1XtZD1zbT4bbOgJxAlaj + OPaAgAaACkwvL11bBAhLeFtgCG5jTkGnM3+pOdihZ97Aox7KJXtxP9GupbBEijbz45f45bNeuDCz + OYwciLIVnw7001G8fXkqT4d+6qFr7UZ+7+Q6M63ipJPzd4ZmQed+tqvzHwNIwFPDGGCIBICqTWkb + KtCAEMKZ1mngxePziuu2M++dT7NZNtP6yvaZkL73dqvYx+lJ0IM9Z6JOnzSbFSdRX+45ExbFIVnS + 2dasUJRYGLjFDivCOGeUcMsYDJRZbhh03FAET+/rwXkXH1zK6txvJun+k24WbZze2pmdD0fOduJo + 4EEDrOq9r8Wfic6i5/wsRbTJwfVo7vS9FDsLiFqnFD2M0/xqA0EJd3pgLtkeFigt+TQBHaudH0Qa + dDFoAATB+uLy1V5zsL1bGSBSE0CkPEC4jVEZgFAJgBAqBRAqBRCRXjjNGPZBE4wg84IGY6QRnBKu + sVSccOZ0SYBwJYAW481+lG018lTHWV/n3n0LT6iJwNVKNC0laRqZvu8OTfYoohoAE7B+DN25gEI1 + AYVKA0VkG8kyQFEqyyAFiSgFFUfl8pJGRHHNmXJGBUeRJNggip1gGjqnhLRGECTgZGDFKGmSimmq + PFgCn5crWBNXsDxXrA1LccVJKa6IUqW4khSX4spT4YWlwkirfBBWB64hJ5ARKZzySHGohKFhMrgi + mDTV98YVPW++kqoerqQqzxVuU1KGKwxxCa5oyXSFMSmFFecYcu+4ZVo6zSCDyhpMJKRUMYkpspYJ + 79SEVEEqmrIiVmdE+jczdaKqppdvrtUk1KWsCTNZCTNcBjOpSlCGFSyntCAvRRnFnFhJKbIECh2C + cURDa4zgUHkpnaCeO0npYxLrTPKmqIhVZ/naCVWjgxdGBy+ODp4fHbw+Org7Onh7dPDX0cGro3v/ + HN195dkbN54Az+htD27tgKtR2gfPJskTYHpuIY12AFIY3i70F1haXJtv/OLWGsVwBUFw5enO/KXK + 3ImauBOlucO8jWpbIOJyJROW0/cQG6mld1QY7UII0gZmSJCCeE40wVJgCx/bAhE1SUVB39XRvo5X + o13dz3obV3WabFwdpj7eiJONm9lwO9pobGC2sT630DuW9I2lCMGV3vocvQKp6LDzlUxeE1O8NFNI + tiGva80I60TKa+Sl44ILRCihPhhiKRIICQSdcsoyLQzGJZEilZBaTuLGOZaN8HukrND3p5BRJSRE + i/B8kLGaIGPlIRNtRiYRMkq89IgJgrmx1MFAlJeWQki8cUwYgTDVlKvJgYyi6ovIb8fsePVYmaSa + PFJJq5CE4SSS5DiXVvDAtFYGC2YZZxJZ4yAmXlDLMCUESjQ5JMk60tVCtBvFfuNKXw/8N1RDOLc4 + x+aYOF+iqslBleUdVMTblE4iXhoLCzGhHlkWENJQOM1N0MFxRWzAgQsXKJkgvEhTfB94nS2DC4uM + 4EWBzkcXrokuXIUuPJFlMEBGjcGOBQ6FpxxLjySjPARFHWPMIY4pCWyStJb87nQtJXGSFEXwWrI9 + jOJHSXopFzGG8JyY1eTay/KuPWJtyiYRM0MZ9tAwKLVkTAYlnDFeU6MwM4JqTg0MUtAJwgxC2aTf + XW49mrSz+WxeYTm/iOfPB1pNNr6EVUDDahJBw5IrpC1RKkiEGTXSMm2hUth6RTTiSKOgxATJeiJx + E9bP2fl0vajJuRflnXtE2wzX1rquESXvIGFcaSUQIUR7z4LBAXsvhQ+aSmQQpJ7bSdL1VbvXXTsc + /PAHRP0kAycDNsPnjr37JC7mbKbPBDwTZVuXQAOsJf3hwAOIWhC3IAFFMqvMWU3WvZBVOMOyLs7q + dFCNhcwrJLlXmlCBJNLEQCs1dUR5XXSxeUAQPa4Rm8p6a0XHLkl1vttIx0wtJKn2gyReH917eXTv + 3dHBS6O7d0d33+iB6WIQ7tL4X9SEvAmLHtE0lfQSmF78+YMu0bmaQ6Imk16UN+kRbhNRF2EP7M1a + zC7tA4EWayQwdkRyiaRGynqtELJYk2CVNNQ+LsSq9xtHd+4f/vndz9969bP7733+n/ujO79cP3rl + /uE7vz786PWjv//p8C+/AVeS26C7E6VRDq7r3G4N9LZPe+tH77336d/uHL7/dm/98LV7h598fPjv + tz776OOj1//42Z1/fPHmC0cfvthbP/rgzqf/emOs0VZ669dXaPUMV5PXKsp6rbLNaq2kssYhMMus + DwhahJxERReSYC9wIN4KIiBVmmjlaSCTU0qFJE1cUZUtDFMdO90/nqxYimK9nYDlJPfHM6rH8xSV + OarJChOkNEcItlmpPAb/x4oMI8wch5RjZJTxLDgtCGUIY8wUdtBIRQ1zYZIwqryG/DaKzqfra7K8 + BK5CEWSTSJEr8pAPhDHpHLOIOkY5hRjSoo9NHffGeuwnKBkhzJusIkY3t/R+0u+Bnw11DJ7disBV + nYDuVjIsMELgxH241QO7GEwP9Oa+TkHw/SjVeeWBCF5TreNla13RVCw5n4pro0uWM1Q5YtJSASXm + NBSmV6DEamcIckQ6jT1nxooJWjUSLCoPET6lbWK6e3pz07tbOz1wXW9GbXBzy4NrUbzpkgFIwnin + Betdr7MkBrhXTON8KepBIavAXKHMKqczXlP7kdPSwNFaxX2dE/bWWsiQ4Fw4BKmjintsoLNcqWCt + hhgriYX3kzFbyCt7FAtrC092b/TWEYcE0h44evPto9eeP3z/ncPf/2q6AOmL394//OB3Ry+/BG6s + dUZ3Xh3d+8Po3r3xYvPD4sfdD0d3Pxndea0yZTVJL05KU1aM3dcmvSSvs2paZ0OgDAvKnFOIQUyZ + 4c4GqhxzTDAJCQ/o/2bO6+lo1zc6tvgCrQdWO8vXOwC1MLi1PH/rJlhcaII1DOYWVp9cAUVLaAWs + 3ehWBqgm1cVxaYCwaLPa2th1WhBaa2uQQ1pASagwWGHqbYCQEkQ9hTAITYkwk1MXWeU29pzXeRpZ + f/qx4tBE21Eagfl92y9uo5NEaQK6elfHOcgT8KxO/WaSJ8+Nv2m8sdYB02tJH6AGv1S4qqtfmVwd + j0oX86rVq2VN/SEOS2OIWEnxT0tgSMq5reU+8GCGQCGxtgIK6hEmXkHiNYQOagaFIEEHRIV4XHms + en1cSZPQA50s01kWxeNPasF8X2dZmiQDMN2JM51nw/Gns9lWlGfDS+BEkqFxatsp0GLjyWiAoIly + cIzewlD3QWfooqSY0K8KHavJ4Wdy5r8AAAD//yIu0ZlZmVhYGVJt9tuQmrOSBubGxkapaSnGZqZp + hqZmBuaWSakWpmnJlgZGFsZGlikmJuZpiUaWFoOjiWZJ6oi/c7huQE5iXmqJAqit1bwW2ugCtb72 + gBm7HzdPB438N/eCG2YdBpag6jTELQhtVyQAAAD//8ydy25cxxGGX+UIRgAF8Rh169vseFNkyxQJ + URGSCFz0VTyhPGMMNQkI5CGyyysEebXkIYIe6mIFidVn2JLPhuSSiw9dVX/9f51phHVS+JVpJoxc + 69SpWxBrq6/vn79PFNgcM4acck5QjDLFKo2sU3AuRXSivHaF44zEMaV4sqzx7cHi8XjtN2N98fxw + 6lMevtu+ul1vh6Or7TucXsrh8aNDcfu5D1UnOUO1yhlqKWapVC85oy3/3xZcCwoQiVLerY1I6+hV + jrlEgByELQoba6yfkz+MJhbQnzD1ZP0Xv8nXNUe0Wg9nm1f59XDxY46jfz08/NCLXdVe7PD4Lj40 + vHSH6Awe8X60dZoyFTfThnqJTUMCdxPPGpsz62MOKpZgYsg7e0XxirMl1F4FDTZU5X9GtBHAZFP+ + cb750Y+bxbnf+DTe5Mvh4mpcvcrXu7smh/7K/7B9U40W4+bVuBou1tvXw4eK+fh4n3W46jQDqNYZ + QJYkS9XkERPTgplqE2nbiiVkF5zCVFO4UP3UmIvWQpy0JnSOPCcXYEam6pr+uFcmd7UO69W6Wi5Q + VxuPhuHh0e87RXGlk29MWn1jvCRYYlsepCWK2yaVqbaimYiTRTDVXwE1/mG1gWQyRofKaqvrhiDg + LzVjaphsOHw8Lu72kX/YLn47Ls6uHgwvnh18+/Ri+OrkGHB4+PzF2f9AaXh5sPFhjMP3t5sx3lzu + hVanNl9a23xailvKF16At9VHkWCcZGCTlGPlFUSxDmJSgkWUMNZ5sszI3YoyOfL9M6ydnX9m1jql + cEVPYa3t9Fe/RWbbWolEO2c1RjQ+G6MQiw9Gh5r1LkBU7Yo60pzW5NPNFu9Z+2O9VXHtN3547P80 + /pA32+HU1235arc1r//S0ckx/nQIqORV6p59/ey7e0HXadwU1QxdXTNhrwcOOj5waIIGsWgwJZtN + YCopZZuVFe2NA+2tiTbMaEvAOHl5fpzLuBrf5Ne3T9dvTmv7n8drP95sN9vhiU8VNrAdBDLptCUX + aQdLLaWtKWu57sRNZAk3HqqAUnwpSWIyFDR7601JQJhIkvPATggDzEgfE5583HAaW3tfDpNOooXw + FLS4LULZcgOl7byTtN3diQhRQyTEGH3WynmJEZONBpkUsw3Ra0ozKpX1cJj5fLXyrk/7qEd7Vym/ + Pnl6r2LZaaUu1A4eLol6dWhtxVK1YQcQCqXgVQnZ5YxZ13OthVwRhQxa2xRjSI3Y4STs7n6fbm/G + OLwYU15/qjkzU7X+w3rfeFONZG+u8nDxxm9uhod3z9mOtLy6Hn+9i5BUM9nxi+OhGqyHXaKyTgSX + L6+38apu4LfXo5+8NZdO8V1pje9i3QK0VU/q6ODnts7Mi86BvMk2QVIerA05JF9IaWFxyUZNVPxM + Dm7yNzJ1i35wcnFyMRweL04XJ6ujy+FslYfzMcc8nK7/POYBqHoyFu9Tu4sdYo/ACqsjunw/fl5s + w3TWOqmzAs2s1U7tC19/apw7s47stHIqGSklMCqdHbpSINlUDHgmDXlGBtrp158+9vg/WQd/62+u + xsWNXw1HV7vn7exsON74V+tV7dhoT9s/dzJhsG3mCtSSu9n+exrQbGDtggNjE6ZiarTSFIlSRKsE + op1VJhuY0wkCPX20nA7W3Xw5maxOqiybdrJkyXaWZGFwKmZbAqmYTar3xBIWyRBLfcg4pZDRzejF + Iv4G70XWs7zy43C43l5vV/dJt3EnwZV1O0a8VPBlta82jAyxw6RywhBsKtYVnQAlIhZrjREMgFJm + lW6b3NN/GqP96lwnCZXVFIxgliFJcOKCK+yVZePEqIhRZ0+Sk3FIKmeEMisJFREn61z/+uc//v33 + v71dbh9t/O16tXNRLOpncYavHNPw8OLg+YvfPDk86rTj5k5yKrfKqbBkWZLppnl1tRuSThxzNbIK + YjSsJeugNHnwEJypgSQUo/QvtOMmh/e8jH++Gc+rd/9qHHdQPXhwp53eQ5DnTqopczNB6JbctF7k + Fsdq400AaXuplM6c0IM45X3QwrG+WsQ2OYqWxDibPfg0D0mBjJ78Sn1MFAL8ajj3N9G/Xtzk1U0e + 709UJzmUaRJRTW04Y0ei2kQqp5nZGkVgtLcxFevF6qxJo0g26LUuopOeC1Hqnl+F+b9v1N6LHe6k + ejK2A2WX0KSvq7YvwrSto61udEGwNTrHEkNyoqzLzgInFhVVYnBF2CbimYRraxKfPs8btT9RnbRN + hnaizFK1fWQI+iWByLQdCICYvWBQYkKwWhUTSrAYiJGCslJC9Aap+Vz0ZydKJs94jW/U3p8Xok5m + U3LtROnGNopaGvE2K/OO+KZwWa10ulT7sqoW+Ww86JR8KN767KrtVGk3k6Jn1GTpqfGF2p+nTio5 + 2Uk86W4+mUaeqK3k5QzRQjA2SD2DY51PSVGxYKMv6JSyEiWDmQlPMnnOO9/e+srSg8vh8Ozp2d2P + 91/93BW6l+4R4InWj/YDqpM4TqYdKGgMW2A/HylJ27fPLNd7ETVfjQajtpCtSZUwIABWGbIo52f0 + ORejJte8ZwcXJ88vfnfnt3r7/bO7NYvfDH/98Ofd59BudzGMeuayXsSBd7aFd3mymrxe7JLXk5VQ + 6iRSUbtIBdzTmEVtjxm1WWQMehtyRKw3lyAE4zSVGG3KBIVLIW9DMDCT2ohq8q3V//6a49uUzy7e + cw9dgTopVdSuVAEtqSmUSNLN34fU1mJpZkO6aGtj/YRjyWRdQnAma8aINdtDFGkuGO1xLu5nOdp7 + 9qOJ8tR/AAAA///Mnc1uXMcRhfd5iqtNIAEiXdW/VYxhgJRIWLAjGSIdwyCIQfVfNBHJETgzCuRH + sFd+huyzD/I68SJvEfSQMf3DKH2HreS+w3eru88959R/xKhdntpYW5rkKeh3s6JGeYpJF4pMImIs + Z1swebYOSYEOipJFS1bHydzUu1K0/f28kyalcAxF0LZP3XX78UKNG1swARnnOAiaZAo7pcFbm5OH + xNp6qwUzT8WId1/54E7/+j1ONuwkHuDd4sHR1fxxtdX8CJPSe1btYZPAaVTTTGrrd0DfOJVirJWn + BTGZUOoWz6jEE1hPpJwn9KGmDWkiU6mGIvwHIGrrMw47qQdIzUDVzGDTGeedbRI4G9975NssnOI1 + onFgVdZYorJZeUs562C1K0bV3QYlmqmMKDU+Wf9jFuJlvisO8WyZq0t9Q1rt3nrxBajrt95P04P2 + Ord66xvexpWAnbQG9O34uf95P3ibcuWslBi8ZUebopqQnEZJEDAGjkzOpayKnVDES5nRUfyfqFfv + mWSnT58cHSLQdqvLsJMtD107VKZx/6LpF+/CxuhgToqLMIXMICZma5IjA4mRrApEKis0nGla+S7a + vlprZ3gu8+WrRVWxTpbrsLi4rqc8Neze7Ow/0aN1Kezk0EPbTJRyjUZP0y+K2nY8YnY2sc8lR1ec + doEjVZ8e56gDQlSWReKEcGIwY70vv+6df/jvevCbfVL7b2UlV4+q6L4JbpWrxcXwbrFerUMejVcn + 2RNNM16oG7etKO72RNz8Ymo5CJUPtkjKVVxQEBx6cTkn0j5pbWlTQMmopnEBI3dPG8zd5+DWegN2 + Ej9RN8ME1Jox9U0NgI04QaMLRmurPHmkaIl89miKBFcMeCgqWjJKcy5eJqJ/Gj/aBfPlyVc7J5++ + eLl/Nhy+lcs/5vNao6t3tR6+rt2Scjk8fL5YPRpe5rQYbjfFPq6W4sflXOL4I7GTOIqqHTOzZ5t+ + 1ZgW757FnpVsFDUmVRijD5IiZ0sE3ihSqbABTEVFZqMnMrN23cg/NXcTpnbrd/8LxvbTW7mM+VeY + PT053jk8Hg9aJ/0UcRRo0A00Y3oKqAENWcvJqpwjcC1lNuQhleS1MOrImbzhqRiwYJfHkXZL1wx3 + EWdfL9az/as827A12z9fXOZZTc3zo9kNXAfn65fy7meMzXZmG1hHs9bJ7YcwhrW2tjbdcnTqtqHG + jWHm2pipAVwm45JR2WLBKAGy9RJdjM6AS3kixd9+LGqnx0eHL25COP/8+/f/+Nt3P/z1Lz98/+1w + HF/9Wa6+ycsLuXqdLzfaV92leJ3AuW6Zr+LXWLygk3oPreq92rN+zzSdmYr62Rt0G16BFCAlUyvk + xdtU0xMKncYQU8oi4pINBsr/K4QzeoPGeF0VP5CuCp1kfaBm0rTfU9CraEZ3LJrJSZPSJIYTM0LI + qBMn5VTRVjlLXnGILk+plU2Nlr8+y5er9ep5vpLXMmJ3y2q5Wd6yM4Cr97U65d4MVSEbTp1+gk8Q + D7d6hEInXR98O39uT3fjr+0F6tuCYsLGWM3F+BqPBp9wk2H1XpIFdIYS5oxpSq2AerSwf3BwdDYc + rJeL9UYv+9Ni+L3EV3N5m8/P53I5X17cRKRP/nBN2fGXB8Ozk/2z06eG9g8PDw+2A62TMgu2GbQa + IWs7Un03rd+1Sf2UfQzaGwjBMjMIKxspqBiSdWgsqcSSsp0Qak6NdkAf7Tw9G559k1crebzZ2vi5 + LFfDV/NVfLXRzb44u48HFTrpZ9Cqn+Fm9Q9086A2Zsga8xmIwTqhTJh0QCk5KYSCzinNrItlGwkj + 2Ym8N0eXGf1ci/1Mwvr1PKwf3Ayr7Z060OkpCdCMkdZ7pslY4ZpsX42LWLDxL6TxHJPxLhEFU3QE + Y6xVvvJEyUpMXoMKE4kiMuL4Nub3krStQwe4z6MRmNtBajUzYxtJbRvwbu0+/+XZWHL2OQSp+9RD + jinnKLVvRsWgBCVaI0nYTCQmTeaeodZfkrTtnyFg6kQSjSEJmu5K1neL22tscw76LNmJU7aKpiTF + MiuPKEWSh2JN5kwgYSIcMYx+Ex7LfJXnDbdyPzys4+nRcKqNPTBIdju+fCe+fDNfQI1KPXV79DVO + KV28q/bBQhYtQyzopLAxCAlc3dyTo1eiylSmFI3+i725hn8q89fv1usHD4bbtZy/lYs3vxvUzVX8 + eB1CTmejYXKdYGo1cUHVStv6ilpmlemoIDAZ41QolmsOjAzHKA688xEDi/EZtEq+uRTrg7fXvneZ + 9ccf1Rz9ZT7/5Dcff3S1XH7yLwAAAP//AwAWNwTacrIAAA== headers: cache-control: [max-age=300] - cf-ray: [361d516b98253470-LHR] + cf-ray: [3691c4b63c27728f-AMS] connection: [keep-alive] content-encoding: [gzip] content-type: [application/xml] - date: ['Sat, 20 May 2017 06:42:48 GMT'] + date: ['Sat, 03 Jun 2017 09:53:58 GMT'] server: [cloudflare-nginx] - set-cookie: ['__cfduid=d867e36384457c5aa7ac17efd34bef7a31495262568; expires=Sun, - 20-May-18 06:42:48 GMT; path=/; domain=.nyaa.si; HttpOnly'] - x-proxy-cache: [MISS] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - Cookie: [__cfduid=d867e36384457c5aa7ac17efd34bef7a31495262568] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 - (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36'] - method: GET - uri: https://nyaa.si/?c=1_0&f=0&o=desc&q=Game+of+Thrones+S05E08&s=id&page=rss - response: - body: - string: !!binary | - H4sIAAAAAAAAA0yPz2rDMAyHz+lTCA92GUShXWGkjscO6247NH0B0yqNmWMbySzN2w+3MHqUvp/+ - fJpF4Dr5IK3NcerUmHNqEed5rudNHfmC66bZ4keOk4JfYnExdGpdN8qsKn0abQjkzaqqdHbZk/le - rIVjZKaQYe88waHvNd5hiZ1JTuxSdjGYQ9/DnugMQ2R4ftq87r7sRBAHOI4cAwn0zfazebshjY+j - ZZV34ceUh6VFDIu1tTjUeGsXXozaUsHINNzdHqPvyV6oYxEFTL5TQn5QkJdEnbIpeXey5RayyMt1 - 8gqwOOO/tC7E/AEAAP//AwBlBXHHQwEAAA== - headers: - cache-control: [max-age=300] - cf-ray: [361d5175387806f4-LHR] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/xml] - date: ['Sat, 20 May 2017 06:42:50 GMT'] - server: [cloudflare-nginx] - x-proxy-cache: [MISS] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: ['*/*'] - Accept-Encoding: [!!python/unicode 'gzip,deflate'] - Connection: [keep-alive] - Cookie: [__cfduid=d867e36384457c5aa7ac17efd34bef7a31495262568] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 - (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36'] - method: GET - uri: https://nyaa.si/?c=1_0&f=0&o=desc&q=Game+of+Thrones+S05&s=id&page=rss - response: - body: - string: !!binary | - H4sIAAAAAAAAA0yPsW7DMAxEZ+crCBXoUsA0kmZxZBVd0q1DnB8QHDoWKksCKdTx3xdKgCIj747k - Pc0icJt9kNbmOHdqyjm1iMuy1MuujnzFbdPs8TPHWcEvsbgYOrWtG2U2lR4mGwJ5s6kqnV32ZL5X - a+EcmSlkODpPcOp7jQ+zxC4kA7uUXQzm1PdwJLrAGBleX3bvhy87E8QRzhPHQAJ9s7/rGp/3yh3v - wo8pbaVFDKu1tTjUeJeLX3DaMsHEND7AnqMfyV6pYxEFTL5TQn5UkNdEnbIpeTfY8gtZ5O02ewVY - gPGfWBfH/AEAAP//AwCkSGmBQAEAAA== - headers: - cache-control: [max-age=300] - cf-ray: [361d517e8d57354e-LHR] - connection: [keep-alive] - content-encoding: [gzip] - content-type: [application/xml] - date: ['Sat, 20 May 2017 06:42:51 GMT'] - server: [cloudflare-nginx] - x-proxy-cache: [MISS] + set-cookie: ['__cfduid=ddefe21d530eeec0cedf30a222664d29e1496483638; expires=Sun, + 03-Jun-18 09:53:58 GMT; path=/; domain=.nyaa.si; HttpOnly'] + x-proxy-cache: [HIT] status: {code: 200, message: OK} - request: body: null @@ -201,158 +148,106 @@ interactions: Accept: ['*/*'] Accept-Encoding: [!!python/unicode 'gzip,deflate'] Connection: [keep-alive] - Cookie: [__cfduid=d867e36384457c5aa7ac17efd34bef7a31495262568] - User-Agent: [!!python/unicode 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) - AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27'] + Cookie: [__cfduid=ddefe21d530eeec0cedf30a222664d29e1496483638] + User-Agent: [!!python/unicode 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) + AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1664.3 Safari/537.36'] method: GET uri: https://nyaa.si/?c=1_0&f=0&o=desc&q=Fairy+Tail+S2&s=id&page=rss response: body: string: !!binary | - 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 - /EZWTXYDAQA= + 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 headers: cache-control: [max-age=300] - cf-ray: [361d53138dc134b8-LHR] + cf-ray: [3691c4bee96c2c66-AMS] connection: [keep-alive] content-encoding: [gzip] content-type: [application/xml] - date: ['Sat, 20 May 2017 06:43:56 GMT'] + date: ['Sat, 03 Jun 2017 09:54:00 GMT'] server: [cloudflare-nginx] x-proxy-cache: [MISS] status: {code: 200, message: OK} diff --git a/tests/sickrage_tests/providers/torrent/parsing_tests.py b/tests/sickrage_tests/providers/torrent/parsing_tests.py index 73d497f01a1608bc76c992378380ddb548f6c537..c365387c393e0f2871ecb8f52a5961a48555965b 100644 --- a/tests/sickrage_tests/providers/torrent/parsing_tests.py +++ b/tests/sickrage_tests/providers/torrent/parsing_tests.py @@ -57,6 +57,12 @@ disabled_provider_tests = { # Have to trick it into thinking is an anime search, and add string overrides 'TokyoToshokan': ['test_rss_search', 'test_episode_search', 'test_season_search'], # 'Torrrentz': ['test_rss_search', 'test_episode_search', 'test_season_search'], + # RSS search is broken (site's fault) + 'LimeTorrents': ['test_rss_search', 'test_episode_search', 'test_season_search'], + # Not working on CIs for some weird unknown reason + 'SkyTorrents': ['test_rss_search', 'test_episode_search', 'test_season_search'], + # Not working on CIs because of a SSL error + 'ilCorsaroNero': ['test_rss_search', 'test_episode_search', 'test_season_search'], } test_string_overrides = { 'Cpasbien': {'Episode': ['The 100 S02E16'], 'Season': ['The 100 S02']}, @@ -108,8 +114,7 @@ class BaseParser(type): def magic(self, *args, **kwargs): # pylint:disable=no-member if func.func_name in disabled_provider_tests.get(self.provider.name, []): - print("skipped") - return unittest.skip(str(self.provider.name)) + self.skipTest('Test is programmatically disabled for provider {}'.format(self.provider.name)) func(self, *args, **kwargs) return magic diff --git a/tests/torrent_tests.py b/tests/torrent_tests.py index 84e66166fe4e056da45ec7fc3fb3869ce5741e9c..2d199b3ea10543228503ab0ea2ae08e8bd3539c0 100644 --- a/tests/torrent_tests.py +++ b/tests/torrent_tests.py @@ -74,6 +74,7 @@ class TorrentBasicTests(test.SickbeardTestDBCase): return True @staticmethod + @unittest.skip('KickAssTorrents is down, needs a replacement') # TODO def test_search(): # pylint: disable=too-many-locals """ Test searching diff --git a/tox.ini b/tox.ini index 9769ffb6542099e5c1e48915adbeefefed261a17..ece7257b99c94e142c9ec25488f19a12ed470b14 100644 --- a/tox.ini +++ b/tox.ini @@ -1,6 +1,6 @@ [tox] skipsdist = true -envlist = py27-{windows,linux} +envlist = py27-{flake8,windows,linux} [testenv:py27-linux] platform = linux @@ -48,8 +48,8 @@ deps = flake8-coding isort commands = - flake8 --exclude node_modules,bower_components,lib --select C101,C102,C103 - isort -rc -c -w 160 -ca -dt -a "from __future__ import unicode_literals" -df sickbeard sickrage + flake8 --select C101,C102,C103 sickbeard sickrage tests SickBeard.py setup.py + isort -rc -c -w 160 -ca -dt -a "from __future__ import unicode_literals" -df sickbeard sickrage [flake8] accept-encodings = utf-8, latin-1