- Notifications
You must be signed in to change notification settings - Fork76
Auto download subtitles from streaming services, such as Apple TV+, CatchPlay, Crunchyroll, Disney+, FridayVideo, HBO GO Asia, iQIYI, iTunes, KKTV, LINE TV, meWATCH, MyVideo, NowE, NowPlayer, Viki, Viu, WeTV, YouTube, and etc.
License
wayneclub/Subtitle-Downloader
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
NON-COMMERCIAL USE ONLY
Subtitle-Downloader supports downloading subtitles from multiple streaming services, such as Apple TV+, CatchPlay, Crunchyroll, Disney+, FridayVideo, HBO GO Asia, iQIYI, iTunes, KKTV, LINE TV, meWATCH, MyVideo, NowE, NowPlayer, Viki, Viu, WeTV, YouTube, etc.
Subtitle-Downloader is a command-line program to download subtitles from the most popular streaming platform. It requiresPython 3.10+, andNodeJS. It should work on Linux, on Windows, or macOS. This project is only for personal research and language learning.
- Linux, macOS:
pip install -r requirements.txt
- Windows: Execute
install_requirements.bat
Name | Authentication | Geo-blocking |
---|---|---|
Apple TV+ | Cookies | |
CatchPlay | Cookies | Indonesia, Singapore, and Taiwan |
Crunchyroll | Cookies | |
Disney+ | Email & Password | |
Friday Video | Cookies | Taiwan |
HBO GO Asia | Email & Password | |
iQIYI (iq.com) | Cookies | Partial region |
iTunes | ||
KKTV | ||
LINE TV | ||
MeWATCH | Profile Token | Singapore |
MyVideo | Cookies | Taiwan |
NowE | Cookies | |
Now Player | Cookies | |
Viki | Cookies | Partial region |
Viu | ||
WeTV | Cookies | Partial region |
YouTube | Cookies (Subscribe channel) |
- Install Chrome plugin:get-cookiestxt-locally
- Login to the streaming service, and use the plugin to download cookies.txt (Don't modify anything even the file name)
- Put cookie.txt into
Subtitle-Downloader/cookies
- Fill your email and password in
Subtitle-Downloader/user_config.toml
Online(Colab environment is in the US, if you want to use it in another region please execute it locally)
- Save a copy in Drive
- Connect Colab
- Install the requirements (Click 1st play button)
- Depend the download platform and modify the text field (Click the play button next to it when modified completely)
- Download the subtitles from the left-side menu
Depending on the download platform and modify
Subtitle-Downloader/user_config.toml
[subtitles]default-language ='en'# all/en/zh-Hant/zh-Hans/zh-HK/ja/kodefault-format ='.srt'# .srt/.assarchive =true# true/false[headers]User-Agent ='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36'[credentials.DisneyPlus]email =''password =''[proxies]us ='http:127.0.0.1:7890'# Clash[nordvpn]username =''password =''
Follow each platform's requirements and put cookies.txt into
Subtitle-Downloader/cookies
Execute the program with the command line or
Subtitle-Downloader.bat
(Paste the title's URL)python subtitle_downloader.py URL [OPTIONS]
-h, --help show this help message and exit -s --season download season [0-9] -e --episode download episode [0-9] -l, --last-episode download last episode -o, --output output directory -slang, --subtitle-language languages of subtitles; use commas to separate multiple languages default: Traditional Chinese all: download all available languages -alang, --audio-language languages of audio-tracks; use commas to separate multiple languages -sf, --subtitle-format subtitles format: .srt or .ass -locale, --locale interface language -p, --proxy proxy -d, --debug enable debug logging -v, --version app's version
Disney+
Codec | Language |
---|---|
en | English [CC] |
zh-Hant | Chinese (Traditional) |
zh-Hans | Chinese (Simplified) |
zh-HK | Cantonese |
da | Dansk |
de | Deutsch |
de-forced | Deutsch [forced] |
es-ES | Español |
es-ES-forced | Español [forced] |
es-419 | Español (Latinoamericano) |
es-419-forced | Español (Latinoamericano) [forced] |
fr-FR | Français |
fr-FR-forced | Français [forced] |
fr-CA | Français (Canadien) |
fr-CA-forced | Français (Canadien) [forced] |
it | Italiano |
it-forced | Italiano [forced] |
ja | Japanese |
ja-forced | Japanese [forced] |
ko | Korean |
ko-forced | Korean [forced] |
nl | Nederlands |
no | Norsk |
pl | Polski |
pl-forced | Polski [forced] |
pt-PT | Português |
pt-BR | Português (Brasil) |
pt-BR-forced | Português (Brasil) [forced] |
fi | Suomi |
sv | Svenska |
HBO GO Asia
Codec | Language |
---|---|
en | English |
zh-Hant | Traditional Chinese |
zh-Hans | Simplified Chinese |
ms | Malay |
th | Thai |
id | Indonesian |
iQIYI iq.com
Codec | Language |
---|---|
en | English |
zh-Hant | Traditional Chinese |
zh-Hans | Simplified Chinese |
ms | Malay |
vi | Vietnamese |
th | Thai |
id | Indonesian |
es | Spanish |
ko | Korean |
ar | Arabic |
Viu
Codec | Language |
---|---|
en | English |
zh-Hant | Traditional Chinese |
zh-Hans | Simplified Chinese |
ms | Malay |
th | Thai |
id | Indonesian |
my | Burmese |
WeTV
Codec | Language |
---|---|
en | English |
zh-Hant | Traditional Chinese |
zh-Hans | Simplified Chinese |
ms | |
th | Thai |
id | Indonesian |
pt | Português |
es | Spanish |
ko | Korean |
- Login tomeWATCH on the browser.
- Select a movie or series you want to download
- Open the
devtools
in the browser (Windows: Ctrl + Shift + I or F12; macOS: ⌘ + ⌥ + I.) - Refresh the page and select
Network
ondevtools
- Type
https://www.mewatch.sg/api/account/profile
in the filter to find the profile api - Copy profile token (X-Authorization) from profile API Request Headers (Do not include
Bearer
, the profile token starts witheyJ0eXAiOiJKV1QiLCJhbGciOiJSUzUxMiJ9.eyJ
) and paste inSubtitle-Downloader/user_config.toml ([credentials.meWATCH] profile_token='')
.
- Copy the user-agent from login browserhttps://www.whatsmyua.info/ and paste it in
Subtitle-Downloader/user_config.toml (User-Agent)
. The user-agent must be the same as login browser user-agent.
- Download all seasons and all episodes
python subtitle_downloader.py URL
- Download season 1 episode 1
python subtitle_downloader.py URL -s 1 -e 1
- Download season 1 episode 1's subtitle with all languages
python subtitle_downloader.py URL -s 1 -e 1 -slang all
- Download all episode subtitles in all languages: en, zh-Hant
python subtitle_downloader.py https://www.disneyplus.com/series/loki/6pARMvILBGzF -slang en,zh-Hant
- Download the latest episode
python subtitle_downloader.py URL -l
- Download season 1 episode 1-10
python subtitle_downloader.py URL -s 1 -e 1-10
- Download season 1 episode 1,3,5
python subtitle_downloader.py URL -s 1 -e 1,3,5
- Download season 1 episodes with NordVPN (region=tw)
python subtitle_downloader.py URL -s 1 -p tw
- Download season 1 episodes with proxy (Clash)
python subtitle_downloader.py URL -s 1 -p http:127.0.0.1:7890
- Download season 1 episodes with .ass format subtitle
python subtitle_downloader.py URL -s 1 -sf .ass
- Few streaming services have Geo-blocking, make sure you are in the same region or use a proxy to bypass restrictions.
- Disney+ doesn't support VPN.
- Viki has API protection, don't call API too often. (Only catch 100% completed subtitles)
- Any issue during downloading subtitles, upload the screenshot and log file (Please provide title, platform, and region).
- Make sure the video contains embedded subtitles (subtitles able to turn on and off) and it is playable in your region.
- Please ⭐️ this repository if this project helped you!
- Contributions of any kind are welcome!
- Netflix:Netflix subtitle downloader
- Amazon (Prime Video):Amazon subtitle downloader
About
Auto download subtitles from streaming services, such as Apple TV+, CatchPlay, Crunchyroll, Disney+, FridayVideo, HBO GO Asia, iQIYI, iTunes, KKTV, LINE TV, meWATCH, MyVideo, NowE, NowPlayer, Viki, Viu, WeTV, YouTube, and etc.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.