Providers¶
-
class
subliminal.providers.
TimeoutSafeTransport
(timeout, *args, **kwargs)[source]¶ Timeout support for
xmlrpc.client.SafeTransport
.
-
class
subliminal.providers.
ParserBeautifulSoup
(markup, parsers, **kwargs)[source]¶ A
bs4.BeautifulSoup
that picks the first parser available in parsers.Parameters: - markup – markup for the
bs4.BeautifulSoup
. - parsers (list) – parser names, in order of preference.
- markup – markup for the
-
class
subliminal.providers.
Provider
[source]¶ Base class for providers.
If any configuration is possible for the provider, like credentials, it must take place during instantiation.
Raise: ConfigurationError
if there is a configuration error-
video_types
= (<class 'subliminal.video.Episode'>, <class 'subliminal.video.Movie'>)¶ Supported video types
-
required_hash
= None¶ Required hash, if any
-
subtitle_class
= None¶ Subtitle class to use
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
classmethod
check
(video)[source]¶ Check if the video can be processed.
The video is considered invalid if not an instance of
video_types
or if therequired_hash
is not present inhashes
attribute of the video.Parameters: video ( Video
) – the video to check.Returns: True if the video is valid, False otherwise. Return type: bool
-
query
(*args, **kwargs)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
Addic7ed¶
-
subliminal.providers.addic7ed.
series_year_re
= <_sre.SRE_Pattern object>¶ Series header parsing regex
-
class
subliminal.providers.addic7ed.
Addic7edSubtitle
(language, hearing_impaired, page_link, series, season, episode, title, year, version, download_link)[source]¶ Addic7ed Subtitle.
-
class
subliminal.providers.addic7ed.
Addic7edProvider
(username=None, password=None)[source]¶ Addic7ed Provider.
-
subtitle_class
¶ alias of
Addic7edSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
_get_show_ids
(**kw)[source]¶ Get the
dict
of show ids per series by querying the shows.php page.Returns: show id per series, lower case and without quotes. Return type: dict
-
_search_show_id
(**kw)[source]¶ Search the show id from the series and year.
Parameters: Returns: the show id, if found.
Return type:
-
get_show_id
(series, year=None, country_code=None)[source]¶ Get the best matching show id for series, year and country_code.
First search in the result of
_get_show_ids()
and fallback on a search with_search_show_id()
.Parameters: Returns: the show id, if found.
Return type:
-
query
(show_id, series, season, year=None, country=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
LegendasTv¶
-
subliminal.providers.legendastv.
type_map
= {'C': 'episode', 'M': 'movie', 'S': 'episode'}¶ Conversion map for types
-
subliminal.providers.legendastv.
season_re
= <_sre.SRE_Pattern object at 0x3248630>¶ BR title season parsing regex
-
subliminal.providers.legendastv.
downloads_re
= <_sre.SRE_Pattern object>¶ Downloads parsing regex
-
subliminal.providers.legendastv.
rating_re
= <_sre.SRE_Pattern object>¶ Rating parsing regex
-
subliminal.providers.legendastv.
timestamp_re
= <_sre.SRE_Pattern object>¶ Timestamp parsing regex
-
subliminal.providers.legendastv.
title_re
= <_sre.SRE_Pattern object>¶ Title with year/country regex
-
subliminal.providers.legendastv.
releases_key
= 'subliminal.providers.legendastv:releases|{archive_id}|{archive_name}'¶ Cache key for releases
-
class
subliminal.providers.legendastv.
LegendasTVArchive
(id, name, pack, featured, link, downloads=0, rating=0, timestamp=None)[source]¶ LegendasTV Archive.
Parameters: -
id
= None¶ Identifier
-
name
= None¶ Name
-
pack
= None¶ Pack
-
featured
= None¶ Featured
-
link
= None¶ Link
-
downloads
= None¶ Download count
-
rating
= None¶ Rating (0-10)
-
timestamp
= None¶ Timestamp
-
content
= None¶ Compressed content as
rarfile.RarFile
orzipfile.ZipFile
-
-
class
subliminal.providers.legendastv.
LegendasTVSubtitle
(language, type, title, year, imdb_id, season, archive, name)[source]¶ LegendasTV Subtitle.
-
class
subliminal.providers.legendastv.
LegendasTVProvider
(username=None, password=None)[source]¶ LegendasTV Provider.
Parameters: -
subtitle_class
¶ alias of
LegendasTVSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
static
is_valid_title
(title, title_id, sanitized_title, season, year)[source]¶ Check if is a valid title.
-
search_titles
(**kw)[source]¶ Search for titles matching the title.
For episodes, each season has it own title :param str title: the title to search for. :param int season: season of the title :param int title_year: year of the title :return: found titles. :rtype: dict
-
get_archives
(**kw)[source]¶ Get the archive list from a given title_id, language_code, title_type, season and episode.
Parameters: Returns: the archives.
Return type: list of
LegendasTVArchive
-
download_archive
(archive)[source]¶ Download an archive’s
content
.Parameters: archive ( LegendasTVArchive
) – the archive to downloadcontent
of.
-
query
(language, title, season=None, episode=None, year=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
NapiProjekt¶
-
subliminal.providers.napiprojekt.
get_subhash
(hash)[source]¶ Get a second hash based on napiprojekt’s hash.
Parameters: hash (str) – napiprojekt’s hash. Returns: the subhash. Return type: str
-
class
subliminal.providers.napiprojekt.
NapiProjektSubtitle
(language, hash)[source]¶ NapiProjekt Subtitle.
-
class
subliminal.providers.napiprojekt.
NapiProjektProvider
[source]¶ NapiProjekt Provider.
-
subtitle_class
¶ alias of
NapiProjektSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
query
(language, hash)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
OpenSubtitles¶
-
class
subliminal.providers.opensubtitles.
OpenSubtitlesSubtitle
(language, hearing_impaired, page_link, subtitle_id, matched_by, movie_kind, hash, movie_name, movie_release_name, movie_year, movie_imdb_id, series_season, series_episode, filename, encoding)[source]¶ OpenSubtitles Subtitle.
-
class
subliminal.providers.opensubtitles.
OpenSubtitlesProvider
(username=None, password=None)[source]¶ OpenSubtitles Provider.
Parameters: -
subtitle_class
¶ alias of
OpenSubtitlesSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
query
(languages, hash=None, size=None, imdb_id=None, query=None, season=None, episode=None, tag=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
-
exception
subliminal.providers.opensubtitles.
OpenSubtitlesError
[source]¶ Base class for non-generic
OpenSubtitlesProvider
exceptions.
Exception raised when status is ‘401 Unauthorized’.
-
exception
subliminal.providers.opensubtitles.
NoSession
[source]¶ Exception raised when status is ‘406 No session’.
-
exception
subliminal.providers.opensubtitles.
DownloadLimitReached
[source]¶ Exception raised when status is ‘407 Download limit reached’.
-
exception
subliminal.providers.opensubtitles.
InvalidImdbid
[source]¶ Exception raised when status is ‘413 Invalid ImdbID’.
-
exception
subliminal.providers.opensubtitles.
UnknownUserAgent
[source]¶ Exception raised when status is ‘414 Unknown User Agent’.
-
exception
subliminal.providers.opensubtitles.
DisabledUserAgent
[source]¶ Exception raised when status is ‘415 Disabled user agent’.
-
subliminal.providers.opensubtitles.
checked
(response)[source]¶ Check a response status before returning it.
Parameters: response – a response from a XMLRPC call to OpenSubtitles. Returns: the response. Raise: OpenSubtitlesError
Podnapisi¶
-
class
subliminal.providers.podnapisi.
PodnapisiSubtitle
(language, hearing_impaired, page_link, pid, releases, title, season=None, episode=None, year=None)[source]¶ Podnapisi Subtitle.
-
class
subliminal.providers.podnapisi.
PodnapisiProvider
[source]¶ Podnapisi Provider.
-
subtitle_class
¶ alias of
PodnapisiSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
query
(language, keyword, season=None, episode=None, year=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
Shooter¶
-
class
subliminal.providers.shooter.
ShooterSubtitle
(language, hash, download_link)[source]¶ Shooter Subtitle.
-
class
subliminal.providers.shooter.
ShooterProvider
[source]¶ Shooter Provider.
-
subtitle_class
¶ alias of
ShooterSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
query
(language, filename, hash=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
TheSubDB¶
-
class
subliminal.providers.thesubdb.
TheSubDBProvider
[source]¶ TheSubDB Provider.
-
subtitle_class
¶ alias of
TheSubDBSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
query
(hash)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-
TVsubtitles¶
-
class
subliminal.providers.tvsubtitles.
TVsubtitlesSubtitle
(language, page_link, subtitle_id, series, season, episode, year, rip, release)[source]¶ TVsubtitles Subtitle.
-
class
subliminal.providers.tvsubtitles.
TVsubtitlesProvider
[source]¶ TVsubtitles Provider.
-
subtitle_class
¶ alias of
TVsubtitlesSubtitle
-
initialize
()[source]¶ Initialize the provider.
Must be called when starting to work with the provider. This is the place for network initialization or login operations.
Note
This is called automatically when entering the with statement
-
terminate
()[source]¶ Terminate the provider.
Must be called when done with the provider. This is the place for network shutdown or logout operations.
Note
This is called automatically when exiting the with statement
-
search_show_id
(**kw)[source]¶ Search the show id from the series and year.
Parameters: Returns: the show id, if any.
Return type:
-
get_episode_ids
(**kw)[source]¶ Get episode ids from the show id and the season.
Parameters: Returns: episode ids per episode number.
Return type:
-
query
(show_id, series, season, episode, year=None)[source]¶ Query the provider for subtitles.
Arguments should match as much as possible the actual parameters for querying the provider
Returns: found subtitles. Return type: list of Subtitle
Raise: ProviderError
-
list_subtitles
(video, languages)[source]¶ List subtitles for the video with the given languages.
This will call the
query()
method internally. The parameters passed to thequery()
method may vary depending on the amount of information available in the video.Parameters: Returns: found subtitles.
Return type: list of
Subtitle
Raise:
-
download_subtitle
(subtitle)[source]¶ Download subtitle’s
content
.Parameters: subtitle ( Subtitle
) – subtitle to download.Raise: ProviderError
-