Skip to main content

A Python package for scraping and downloading subtitles from AppleTV / iTunes movie pages.

Project description

iSubRip

iSubRip is a Python command-line tool for scraping and downloading subtitles from AppleTV and iTunes movie pages.

Python Version PyPI Version License

Monthly Downloads Total Downloads Repo Stars Issues



✨ Features

  • Scrape subtitles from AppleTV and iTunes movies without needing a purchase or account.
  • Retrieve the expected streaming release date (if available) for unreleased movies.
  • Utilize asynchronous downloading to speed up the download of chunked subtitles.
  • Automatically convert subtitles to SubRip (SRT) format.
  • Fix right-to-left (RTL) alignment in RTL language subtitles automatically.
  • Configure settings such as download folder, preferred languages, and toggling features.

🚀 Quick Start

Installation

pip install isubrip

Usage

isubrip <URL> [URL...]

(URL can be either an AppleTV or iTunes movie URL)


[!WARNING] iSubRip is not recommended for use as a library in other projects.
The API frequently changes, and breaking changes to the API are common, even in minor versions.

Support will not be provided for issues arising from using this package as a library.

🛠 Configuration

A TOML configuration file can be created to customize various options and features.

The configuration file will be searched for in one of the following paths based on your operating system:

  • Windows: %USERPROFILE%\.isubrip\config.toml
  • Linux / macOS: $HOME/.isubrip/config.toml

Path Examples

  • Windows: C:\Users\Michael\.isubrip\config.toml
  • Linux: /home/Michael/.isubrip/config.toml
  • macOS: /Users/Michael/.isubrip/config.toml

Example Configuration

[downloads]
folder = "C:\\Subtitles\\iTunes"
languages = ["en-US", "fr-FR", "he"]
zip = false

[subtitles]
convert-to-srt = true
fix-rtl = true

[subtitles.webvtt]
subrip-alignment-conversion = true

An example config with details and explanations for all available settings can be found here.

📜 Logs

Log files are created for each run in the following paths, depending on your operating system:

Windows: %USERPROFILE%\.isubrip\logs
Linux / macOS: $HOME/.isubrip/logs

Log rotation (deletion of old files once a certain number of files is reached) can be configured in the configuration file using the general.log-rotation-size setting. The default value is 15.

For more details, see the example configuration.

📓 Changelog

The changelog for the latest, and all previous versions, can be found here.

👨🏽‍💻 Contributing

This project is open-source but currently lacks the infrastructure to fully support external contributions.

If you wish to contribute, please open an issue first to discuss your proposed changes to avoid working on something that might not be accepted.

🙏🏽 Support

If you find this project helpful, please consider supporting it by:

📝 End User License Agreement

By using iSubRip, you agree to the following terms:

  1. Disclaimer of Affiliation: iSubRip is an independent, open-source project. It is not affiliated with, endorsed by, or in any way officially connected to Apple Inc., iTunes, or AppleTV.
  2. Educational Purpose: This tool is developed and provided for educational and research purposes only. It demonstrates techniques for accessing and processing publicly available, unencrypted subtitle data from HLS playlists.
  3. User Responsibility and Compliance: Any use of iSubRip is solely at the user's own risk and discretion. Users are responsible for ensuring that their use of the tool complies with all applicable laws, regulations, and terms of service of the content providers. This includes adhering to local, state, national, and international laws and regulations.
  4. Limitation of Liability: The developers of iSubRip shall not be held responsible for any legal consequences arising from the use of this tool. This includes, but is not limited to, claims of copyright infringement, intellectual property violations, or breaches of terms of service of content providers. Users assume all risks associated with acquiring and using subtitle data through this tool.

By using iSubRip, you acknowledge that you have read, understood, and agree to be bound by this agreement's terms and conditions.

⚖️ License

This project is licensed under the MIT License. For more details, see the LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

isubrip-2.6.8.tar.gz (11.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

isubrip-2.6.8-py3-none-any.whl (46.5 kB view details)

Uploaded Python 3

File details

Details for the file isubrip-2.6.8.tar.gz.

File metadata

  • Download URL: isubrip-2.6.8.tar.gz
  • Upload date:
  • Size: 11.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for isubrip-2.6.8.tar.gz
Algorithm Hash digest
SHA256 1ec28db629c98f5b2afc442c7b2b7b42b8e594401e5ee126e007dd1b4c4c2409
MD5 44523e66c66ffa0d6b160a9b51fb67d3
BLAKE2b-256 537125bdd208ebf71fcfc41e2fbc2f06a30c7daab459937c159b81e772fa4883

See more details on using hashes here.

File details

Details for the file isubrip-2.6.8-py3-none-any.whl.

File metadata

  • Download URL: isubrip-2.6.8-py3-none-any.whl
  • Upload date:
  • Size: 46.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.13

File hashes

Hashes for isubrip-2.6.8-py3-none-any.whl
Algorithm Hash digest
SHA256 669c96794e1b30dfa2fd96e6f807288fb60f8abffc751111ccb67587935c73fa
MD5 2567b3b0245ba608e86a7a854bb26200
BLAKE2b-256 1a72e68274bb82967ff32f63fb3acebc737fef3c8d9b0d2ce4b8a56d55f95756

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page