Skip to content
This repository has been archived by the owner on Nov 9, 2024. It is now read-only.

cli tool that archives youtube videos for you

License

Notifications You must be signed in to change notification settings

what-is-a-git/youtube_archiver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

notice

cobalt is changing it's api and stuff and i don't have a reason to work on this codebase so just know if you try and use this past 11 November, 2024 it just won't work

sorry /shrug

youtube_archiver

rust project that downloads all the information about a youtube video and the video itself

usage

required arguments

  • url: String
    • There are currently three ways to use this argument:
      • A plain YouTube URL, ex: https://youtube.com/watch?v=dQw4w9WgXcQ or https://youtu.be/dQw4w9WgXcQ
        • Simply archives the video into dir.
      • A YouTube channel URL using a handle, ex: https://youtube.com/@youtube
        • Archives all videos from provided channel into dir, using the video id as folder names.
      • A list of YouTube URLs separated by ,, ex: "https://youtu.be/dQw4w9WgXcQ,https://youtu.be/DLzxrzFCyOs"
        • Archives all videos specified into dir, using the video id as folder names.
  • dir: String
    • Specifies the directory in which to archive all video data.

optional arguments

  • video: bool, default: true
    • Specifies whether or not to download the whole video as part of archiving.
  • metadata: bool, default: true
    • Specifies whether or not to download metadata and thumbnails as part of archiving.
  • streams_and_premieres: bool, default: true
    • Specifies whether ot not to archive streams and premieres when archiving a whole channel. This may at times not be wanted as streams can get very long and thus take a lot of memory and time to download.
  • api: String, default: https://yt.lemnoslife.com, ex: http://localhost:8080
    • Specifies the address of api to use for archiving. You must use an instance of the YouTube Operational API for this, although support for the official api and api keys maybe be added in the future if needed.

    • By default this uses the official instance of the YouTube Operational API but is configurable because the official instance has been unreliable at times.

apis used

  • cobalt
    • the actual video downloading stuff
  • YouTube Operational API (yt.lemnoslife.com by default)
    • youtube data api v3 without a key (accessible for all & free)