mirror of
https://github.com/morpheus65535/bazarr.git
synced 2024-09-22 08:26:03 +08:00
Merge pull request #756 from GermanG/germangfixes
Some fixes on providers subdvix, legendasdivx and bsplayer.
This commit is contained in:
commit
7cb4f5c4f7
|
@ -1,30 +1,21 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
from __future__ import absolute_import
|
from __future__ import absolute_import
|
||||||
import logging
|
import logging
|
||||||
import re
|
|
||||||
import io
|
import io
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
|
|
||||||
from requests import Session
|
from requests import Session
|
||||||
from guessit import guessit
|
from guessit import guessit
|
||||||
from babelfish import language_converters
|
|
||||||
from subliminal_patch.providers import Provider
|
from subliminal_patch.providers import Provider
|
||||||
from subliminal_patch.subtitle import Subtitle
|
from subliminal_patch.subtitle import Subtitle
|
||||||
from subliminal_patch.utils import sanitize
|
|
||||||
from subliminal.exceptions import ProviderError
|
|
||||||
from subliminal.utils import sanitize_release_group
|
from subliminal.utils import sanitize_release_group
|
||||||
from subliminal.subtitle import guess_matches
|
from subliminal.subtitle import guess_matches
|
||||||
from subliminal.video import Episode, Movie
|
|
||||||
from subliminal.subtitle import fix_line_ending
|
|
||||||
from subzero.language import Language
|
from subzero.language import Language
|
||||||
from .utils import FIRST_THOUSAND_OR_SO_USER_AGENTS as AGENT_LIST
|
|
||||||
|
|
||||||
import gzip
|
import gzip
|
||||||
import random
|
import random
|
||||||
from time import sleep
|
from time import sleep
|
||||||
from xml.etree import ElementTree
|
from xml.etree import ElementTree
|
||||||
import struct
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -44,6 +35,10 @@ class BSPlayerSubtitle(Subtitle):
|
||||||
def id(self):
|
def id(self):
|
||||||
return self.page_link
|
return self.page_link
|
||||||
|
|
||||||
|
@property
|
||||||
|
def release_info(self):
|
||||||
|
return self.filename
|
||||||
|
|
||||||
def get_matches(self, video):
|
def get_matches(self, video):
|
||||||
matches = set()
|
matches = set()
|
||||||
|
|
||||||
|
|
|
@ -3,25 +3,19 @@ from __future__ import absolute_import
|
||||||
import logging
|
import logging
|
||||||
import io
|
import io
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
import rarfile
|
import rarfile
|
||||||
import zipfile
|
import zipfile
|
||||||
|
|
||||||
from requests import Session
|
from requests import Session
|
||||||
from guessit import guessit
|
from guessit import guessit
|
||||||
|
from subliminal_patch.exceptions import ParseResponseError
|
||||||
from subliminal_patch.providers import Provider
|
from subliminal_patch.providers import Provider
|
||||||
from subliminal.providers import ParserBeautifulSoup
|
from subliminal.providers import ParserBeautifulSoup
|
||||||
from subliminal_patch.subtitle import Subtitle
|
from subliminal_patch.subtitle import Subtitle
|
||||||
from subliminal_patch.utils import sanitize
|
from subliminal.video import Episode
|
||||||
from subliminal.exceptions import ProviderError
|
|
||||||
from subliminal.utils import sanitize_release_group
|
|
||||||
from subliminal.subtitle import guess_matches
|
|
||||||
from subliminal.video import Episode, Movie
|
|
||||||
from subliminal.subtitle import SUBTITLE_EXTENSIONS, fix_line_ending,guess_matches
|
from subliminal.subtitle import SUBTITLE_EXTENSIONS, fix_line_ending,guess_matches
|
||||||
from subzero.language import Language
|
from subzero.language import Language
|
||||||
|
|
||||||
import gzip
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
class LegendasdivxSubtitle(Subtitle):
|
class LegendasdivxSubtitle(Subtitle):
|
||||||
|
@ -293,15 +287,21 @@ class LegendasdivxProvider(Provider):
|
||||||
return archive
|
return archive
|
||||||
|
|
||||||
def _get_subtitle_from_archive(self, archive):
|
def _get_subtitle_from_archive(self, archive):
|
||||||
|
# some files have a non subtitle with .txt extension
|
||||||
|
_tmp = list(SUBTITLE_EXTENSIONS)
|
||||||
|
_tmp.remove('.txt')
|
||||||
|
_subtitle_extensions = tuple(_tmp)
|
||||||
|
|
||||||
for name in archive.namelist():
|
for name in archive.namelist():
|
||||||
# discard hidden files
|
# discard hidden files
|
||||||
if os.path.split(name)[-1].startswith('.'):
|
if os.path.split(name)[-1].startswith('.'):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# discard non-subtitle files
|
# discard non-subtitle files
|
||||||
if not name.lower().endswith(SUBTITLE_EXTENSIONS):
|
if not name.lower().endswith(_subtitle_extensions):
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
logger.debug("returning from archive: %s" % name)
|
||||||
return archive.read(name)
|
return archive.read(name)
|
||||||
|
|
||||||
raise ParseResponseError('Can not find the subtitle in the compressed file')
|
raise ParseResponseError('Can not find the subtitle in the compressed file')
|
||||||
|
|
|
@ -35,6 +35,10 @@ class SubdivxSubtitle(Subtitle):
|
||||||
def id(self):
|
def id(self):
|
||||||
return self.page_link
|
return self.page_link
|
||||||
|
|
||||||
|
@property
|
||||||
|
def release_info(self):
|
||||||
|
return self.description
|
||||||
|
|
||||||
def get_matches(self, video):
|
def get_matches(self, video):
|
||||||
matches = set()
|
matches = set()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue