Skip to content

Releases: Pocketkid2/TheChosenDownloader

Update 1.1

15 Jun 18:42
Compare
Choose a tag to compare

The following update fixes issues #2 and #5 by doing the following:

  • The two scripts download_stage1.py and download_stage2.py were merged into download.py with an optional command-line argument -n or --dry-run to signify running the query without downloading the files.
  • The language command-line arguments are now optional, with the default coming from the OS setting. If the OS setting is not found properly, English (en) is the default, but this can still be overridden with the argument.

An additional minor change was made:

  • The video quality command-line argument to download.py is now optional, and defaults to max.

The documentation has been updated to reflect this and the above changes, although not at the far-bottom examples section.

Initial release

15 Jun 17:47
bcbc90e
Compare
Choose a tag to compare

This is the first official release of the project. It contains:

  • scrape.py - Used to grab all the resource links from The Chosen's website by querying for all videos using GraphQL and then querying and parsing individual video indexes. All links, with their corresponding metadata, are put in a SQLite DB file called chosen_links.db
  • view_db.py - helper script to visualize the SQLite data
  • list_languages.py - helper script to identify desired language codes (since language codes are required for downloading)
  • download_stage1.py - helper script which behaves the same as full download script but prints the results table rather than actually downloading, which lets you simulate the download procedure and figure out the correct command line arguments
  • download_stage2.py - full download script, uses ffmpeg, requires specifying which languages for audio and subtitles, and what video quality (can be exact resolution like 720p or can be max/min)

Notable limitations:

  • No default language (this may be changed in a future version if it is requested)
  • Multiple language tracks for audio or subtitles are not supported (this can also be added, but complicates the query process greatly)
  • Specific sets of seasons or episodes (currently you can only select a single value or leave blank to catch all) are not supported (this can also be added, but complicates the query process greatly)