Download subtitles for movies and shows, automatically with one easy mouse click.
Project description
Table of Contents
- About
- Getting Started
- Preview
- PyPi
- Source
- Executable / MSI
- Wiki
- Supported Languages
- Authors
- Contributing
- Reporting a Vulnerability
- Special Thanks
About
- Automatically search, download and extract subtitles for any movie or show with one easy mouse click from the context menu.
- Has a GUI for all the custom settings that can be configured.
- For 70 different languages, of which most work on all available subtitle sites.
- Can be configured to include hearing impaired subtitles only, none-hearing impaired subtitles only or both.
- Configure how strictly the file name has to match the search results.
- Can be ran from a compiled executable, without the need for a Python interpreter and importing modules.
- Subtitles are gathered from subscene and opensubtitles.
- Pick where you get the subtitles from.
- Works inside and outside of a env.
This started as a fun project to learn how to code in python and how to use git, has now developed into a application I use daily and enjoy working on. There are many similar repositories out there that grab subtitles automatically from the web, so this might not be the most unique project. But feel free to check this one out, might offer something new. Have tried to make the setup processes as painless as possible with the use of as few external modules as possible. The average run time is around 1 second, a little bit longer for TV-Series due to the high amount of titles.
Feel free to ask me anything about this project, request new features, contribute or give constructive feedback.
FYI: If it takes a long time for anything to happen, it's most likely because subscene is under heavy load and all connections takes longer than usual. Nothing I can do about that. But you can disabled them as a provider in the GUI.
Preview
While searching for subs if show terminal is disabled
Available options in the widget - click to expand
Getting Started
Source is probably faster than the executable version, but the executable can be run without installing a Python interpreter or any modules.
PyPi
Download Python >= 3.10
Install subsearch
pip install subsearch
Add the context-menu
subsearch --registry-key add
More options
subsearch --help
Code block example
from subsearch import __subsearch__
from subsearch.utils.raw_config import get_config, set_config
def main() -> None:
config = get_config()
config["providers"]["opensubtitles_hash"] = False
set_config(config)
app = __subsearch__.Subsearch()
app.thread_executor(
app.provider_opensubtitles,
app.provider_subscene,
app.provider_yifysubtitles,
)
app.process_files()
app.on_exit()
if __name__ == "__main__":
main()
python -m main c:\users\vagabondhustler\desktop\foo.bar.the.movie.2022.1080p-foobar.mkv
Source
Install python
Download Python >= 3.10
Clone repository
git clone https://github.com/vagabondHustler/subsearch.git
Install syntax
pip install -e <local project path>[package-index-options]
Example 1: only required dependencies
pip install -e .
Example 2: with dev/optional dependencies
pip install -e .[dev, optional]
Build executable and msi installer
python setup.py bdist_msi
Code block example
from subsearch import __subsearch__
from subsearch.utils.raw_config import get_config, set_config
def main() -> None:
config = get_config()
config["providers"]["opensubtitles_hash"] = False
set_config(config)
app = __subsearch__.Subsearch()
app.thread_executor(
app.provider_opensubtitles,
app.provider_subscene,
app.provider_yifysubtitles,
)
app.process_files()
app.on_exit()
if __name__ == "__main__":
main()
python -m main c:\users\vagabondhustler\desktop\foo.bar.the.movie.2022.1080p-foobar.mkv
Executable / MSI
Download SubSearch-x.x.x-win64.msi from releases - Download URL
Advantage of using the .msi installer is that when updating from a previous version you just need to download and run the new installer, as long as it's installed into the same directory. Else you might have to delete the old registry key, see the Wiki for details.
If you get a PUA message, click More info
If no subtitles are found or no subtitles (including the folder subs with extra .srt files) are synced with the movie check the subsearch.log (logging is disabled by default and can be enabled in the gui) for a list with download links to all the different subtitles that didn't pass the search threshold percentage or decrease the value in the settings GUI, accessed from SubSearch.exe
Supported languages
N/A
= not supported on opensubtitles
Albanian alb
Arabic ara
Armenian arm
Azerbaijani aze
Basque baq
Belarusian bel
Bosnian bos
Brazillian-Portuguese pob
Bulgarian bul
Bulgarian-English N/A
Burmese bur
Cambodian-Khmer khm
Catalan cat
Chinese-BG-code zht
Croatian hrv
Czech cze
Danish dan
Dutch dut
Dutch-English N/A
English eng
English-German N/A
Esperanto epo
Estonian est
Finnish fin
French fre
Georgian geo
German ger
Greenlandic N/A
Hebrew heb
Hindi hin
Hungarian hun
Hungarian-English N/A
Icelandic ice
Indonesian ind
Italian ita
Japanese jpn
Kannada kan
Kinyarwanda N/A
Korean kor
Kurdish kur
Latvian lav
Lithuanian lit
Macedonian mac
Malayalam mal
Manipuri mni
Mongolian mon
Nepali nep
Norwegian nor
Pashto N/A
Punjabi N/A
Romanian rum
Russian rus
Serbian scc
Sinhala sin
Slovak slo
Slovenian slv
Somali som
Spanish spa
Sundanese sun
Swahili swa
Swedish swe
Tagalog tgl
Tamil tam
Telugu tel
Thai tha
Turkish tur
Ukrainian ukr
Urdu urd
Vietnamese vie
Yoruba N/A
Authors
Credits
People/repositories that has helped with templates, inspiration, themes and ways of solving similar problems.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file Subsearch-2.31.0.tar.gz
.
File metadata
- Download URL: Subsearch-2.31.0.tar.gz
- Upload date:
- Size: 63.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d4062a264276b607fb26404af13b631b07928889b04f993c0cf6c18ed048488 |
|
MD5 | 3ad4f399856f4372eff7b20e7fd34b8e |
|
BLAKE2b-256 | 9bc9d83dcf65d95e0d07ad32ad1446582e103142fe0b7f113bcf284a9b4c4e90 |
File details
Details for the file Subsearch-2.31.0-py3-none-any.whl
.
File metadata
- Download URL: Subsearch-2.31.0-py3-none-any.whl
- Upload date:
- Size: 82.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 544a69fd06aff6b31f2607ae30dceec9314452cc0e7affbf92bf9061061d361f |
|
MD5 | 046a11681ffadd6878b878a3acc3393f |
|
BLAKE2b-256 | 22d986565046b35030a0305c1ef91fb4ced64fb350ec8d0022b4f108cf8bf806 |