YoutubeExplode is a C# library that lets programs talk to YouTube without an official API key. It works by scraping page data and using reverse-engineered internal endpoints, which means it figures out how YouTube's own website retrieves information and mimics those requests. The library is listed as being in maintenance mode, meaning it still receives fixes but is not under active feature development. The library covers four main areas: videos, playlists, channels, and search. For videos, it can fetch metadata such as the title, author name, and duration. It can also retrieve the list of available media streams for a video and download any of them to a file. YouTube separates audio and video into distinct streams rather than providing a single combined file for higher-quality content, so the library includes tools for identifying the best audio-only stream and the best video-only stream independently. A companion package called YoutubeExplode.Converter handles the step of joining those two streams into a single video file using a tool called FFmpeg. Closed captions are also supported: the library can fetch a list of available subtitle tracks, retrieve the text content of any track, look up what was being said at a specific timestamp, or save a track as an SRT subtitle file. For playlists, the library retrieves metadata and lets programs page through the list of videos in a playlist. For channels, it can fetch channel details and enumerate the videos published to a channel. The search feature allows querying YouTube and receiving back videos, playlists, or channels as results. The library is available as a NuGet package, which is the standard way .NET developers add third-party code to their projects. The author includes a terms-of-use statement expressing political views about the war in Ukraine, which users must implicitly accept by using the project. The full README is longer than what was shown.
← tyrrrz on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.