A Dart package that parses lyrics from YouTube. No authentication is required.


// Instantiate the scraper.
final captionScraper = YouTubeCaptionScraper(); 

// Fetch caption tracks – these are objects containing info like
// base url for the caption track and language code.
final captionTracks = await captionScraper.getCaptionTracks('video-url');

// Fetch the subtitles by providing it with a `CaptionTrack`
// from `getCaptionTracks`.
final subtitles = await captionScraper.getSubtitles(captionTracks[0]);

// Use the subtitles however you want.
for (final subtitle in subtitles) {
  print('${subtitle.start} - ${subtitle.duration} - ${subtitle.text}');

For more info see example or check the API reference.


The package is heavily inspired by algolia/youtube-captions-scraper.