VOOZH about

URL: https://apify.com/zerohour/yt-transcript

⇱ YouTube Transcript Master | Bulk Data Extractor For AI Β· Apify


πŸ‘ YouTube Transcript Master [EASY] (WebVTT & more) avatar

YouTube Transcript Master [EASY] (WebVTT & more)

Pricing

$37.50/month + usage

Go to Apify Store

YouTube Transcript Master [EASY] (WebVTT & more)

YouTube Transcripts in BULK! Easily query via channel, playlist, or video URLs. Built with simplicity & reliability in mind, with expert support. Perfect data to feed your AI or LLM. Output multiple formats: TEXT, JSON, SRV, TTML, VTT (WebVTT). Automatic YouTube captions are available as backup.

Pricing

$37.50/month + usage

Rating

0.0

(0)

Developer

πŸ‘ Zerohour

Zerohour

Maintained by Community

Actor stats

4

Bookmarked

119

Total users

4

Monthly active users

a year ago

Last modified

Share

πŸ“œ YouTube Transcript Master

This Actor extracts transcripts from YouTube videos a mix of sources like: channel URLs, or playlist URLs, and video URLs. It fetches video metadata (title, duration, upload date) and transcripts in specified formats and languages.

⭐ Paying users will enjoy recieve quick responses messages, expert support for issues, as well as feature or Actor requests


Why the high price?

This a robust Actor built for high volume and bulk dataset for long term use cases. This way I can support the long term users of this Actor more effectively rather than on a "per result" basis. If you would like you may try the lite version of this Actor here: YouTube Transcript Master [Lite]


🌟 Features

  • Retrieve transcripts in bulk with a mix of inputs like: YouTube channels, playlists, or individual video links.
  • Extracts video title, duration, and upload date.
  • Fetches transcripts in multiple formats (Plain Text, JSON, VTT, TTML, etc.).
  • Supports specifying the desired transcript language.
  • Uses efficient HTML scraping minimizing CPU usage.
  • Includes enhanced retry logic for network requests to improve reliability.
  • Optionally uses Apify's residential proxies for consistent results.

πŸ“Š Usage & Estimated Costs

Understanding the potential costs associated with running this Actor is important. Below is an example based on a test run processing 500 videos to retrieve plainText transcripts. Please note that actual costs can vary based on several factors.

Test Run Statistics:

  • Videos Processed: 500
  • Transcript Format Requested: plainText
  • Total Combined Video Length: ~380 hours
  • Average Video Length: ~45 minutes
  • Success Rate: 100% (0 missed results or errors)

Estimated Cost Breakdown (according to test run):

Cost CategoryEstimated CostNotes
Actor Compute Units$1.358Cost for the server resources used to run the Actor's code.
Proxy (Residential)$1.194Cost for using Apify's residential proxies to avoid blocks by YouTube.
Other (Platform Fees)$0.004Minimal platform usage fees.
Total Estimated Cost$2.56

Factors Influencing Costs:

  • Number of Videos: The primary driver of cost. More videos mean longer compute time and potentially more proxy usage.
  • Transcript Formats: Requesting multiple formats per video might slightly increase compute time and proxy usage if different underlying fetches are needed.
  • Proxy Usage: Disabling the proxy (useApifyProxy: false) eliminates proxy costs but significantly increases the risk of being blocked by YouTube, leading to failed runs and potentially higher compute costs due to retries or incomplete runs. Using the proxy is highly recommended.

Important Considerations:

  • The costs shown are estimates based on a specific run and current Apify pricing. Your actual costs may differ.
  • While the Actor includes robust error handling and retries, occasional failures for specific videos (due to missing transcripts, YouTube errors, private videos, or persistent proxy issues) can still occur. Check the output dataset's error field and Actor logs for details on any failed items.

βš™οΈ Input

The actor takes a JSON object as input with the following properties:

FieldTypeDescriptionRequiredDefault
sourcesArrayA list of YouTube URLs. Can include video URLs (watch?v=), playlist URLs (playlist?list=), or channel URLs (@handle, /c/, /user/).Yes[]
formatsObjectSpecifies which transcript formats to retrieve. Set the desired format key(s) to true.No{ "plainText": true, "json": false, "json3": false, "srv1": false, "srv2": false, "srv3": false, "ttml": false, "vtt": false }
languageStringThe two-letter language code for the desired transcript (e.g., en, es, de).No"en"
useApifyProxyBooleanIf true, uses Apify's residential proxies for fetching. Highly recommended to avoid blocks. If false, uses the container's direct IP.Notrue
delayBetweenVideosIntegerAn optional delay in milliseconds to wait between processing each video. Useful for mitigating rate limits on very large lists.No0

Input Example

{
"sources":[
"https://www.youtube.com/watch?v=b_nep8vMnkc",
"https://www.youtube.com/@Apify",
"https://www.youtube.com/playlist?list=PLObrtcm1Kw6PEnu5BpeEFb8XEoQXMw0g7"
],
"formats":{
"plainText":true,// Get one or many formats
"json":true,
"json3":false,
"srv1":false,
"srv2":false,
"srv3":false,
"ttml":false,
"vtt":false
},
"language":"en",// Two letter language codes: 'es', 'fr', 'pl', etc.
"useApifyProxy":true,
"delayBetweenVideos":0// Milliseconds
}

πŸ“₯ Output

The actor outputs data to the default Apify dataset. Each item in the dataset represents a processed video and has the following structure:

FieldTypeDescription
urlStringThe original YouTube video URL processed.
languageStringThe language code requested for the transcript.
titleStringThe title of the video (N/A or 'Processing Error' if extraction failed).
durationIntegerThe duration of the video in seconds (0 or -1 if extraction failed).
videoLinkStringSame as url, provided for convenience.
uploadDateString|nullThe publication date of the video (YYYY-MM-DD format), if found.
textString|nullThe plain text transcript, if requested and found (with improved handling for \").
jsonArray|nullStructured JSON transcript (start, duration, text per segment), if requested and found.
json3Object|nullThe raw JSON3 format transcript, if requested and found.
srv1String|nullThe raw SRV1 (XML) format transcript, if requested and found.
srv2String|nullThe raw SRV2 (XML) format transcript, if requested and found.
srv3String|nullThe raw SRV3 (XML) format transcript, if requested and found.
ttmlString|nullThe raw TTML format transcript, if requested and found.
vttString|nullThe raw VTT format transcript, if requested and found.
errorString|nullAn error message if processing the video or fetching transcripts failed for this video.
detailsString|nullAdditional error details (like HTTP status code or stack trace) if an error occurred.

Output Example (Success - plainText & json requested)

{
"url":"https://www.youtube.com/watch?v=b_nep8vMnkc",
"language":"en",
"title":"Example Video Title",
"duration":123,
"videoLink":"https://www.youtube.com/watch?v=b_nep8vMnkc",
"uploadDate":"2023-10-27",
"text":"This is the extracted plain text transcript...",
"json":[
{"text":"Segment 1 text","start":0.5,"dur":3.2},
{"text":"Segment 2 text","start":3.7,"dur":2.8}
],
"json3":null,
"srv1":null,
"srv2":null,
"srv3":null,
"ttml":null,
"vtt":null,
"error":null,
"details":null
}

Output Example (Failure - general processing error)

{
"url":"https://www.youtube.com/watch?v=invalidVideoId",
"language":"en",
"title":"Processing Error",
"duration":-1,
"videoLink":"https://www.youtube.com/watch?v=invalidVideoId",
"uploadDate":null,
"text":null,
"json":null,
"json3":null,
"srv1":null,
"srv2":null,
"srv3":null,
"ttml":null,
"vtt":null,
"error":"Failed to process: Failed to extract valid playerResponse from HTML after 2 attempts.",
"details":"Error: Failed to extract valid playerResponse from HTML after 2 attempts.\n at processVideos (/actor/main.js:497:23)\n at ..."
}

πŸ“ Usage Notes

  • Recent Uploads: Recently upload videos may not have transcripts right away.
  • Private or Deleted Videos: Keep in mind these videos will result in errors.
  • Live Streams: Processing live or upcoming streams may result in errors or incomplete data, as the necessary transcript information might not be available.
  • Large Transcripts & Multiple Formats: Apify has a 9.4mb limit for each item (transcript), keep this in mind when using multiple formats and large transcripts.

πŸ’¬ Support

If you encounter issues or have questions, contact me @ https://x.com/t_zerohour.


You might also like

YouTube Channel Transcripts β€” Bulk Extract by Influship

influship/youtube-channel-transcripts

Extract transcripts from all recent videos on a YouTube channel in a single run. Returns full text with timestamps per video. Ideal for content research and AI training. No login required.

51

5.0

✨ Free Youtube Playlist Scraper

toludare/youtube-playlist-scraper

Your all-in-one tool for extracting data from YouTube playlists, including podcasts, courses, and releases. Retrieve rich details including titles, descriptions, thumbnails, full video and channel metadata, and engagement statistics.

YouTube Transcript Scraper

automation-lab/youtube-transcript

Extract timestamped transcripts & subtitles from any public YouTube video. Batch hundreds of URLs, 100+ languages with auto-fallback, no API key required. Returns full video metadata + segments. Export JSON, CSV, Excel.

πŸ‘ User avatar

Stas Persiianenko

247

Youtube Transcription Scraper

hgservices/youtube-transcript-scraper

Get the full transcript of any YouTube video in seconds.Paste a video link, a list of links, or a whole YouTube playlist, and download clean transcripts, captions, and subtitles as TXT, SRT, or JSON. No YouTube API key. No quotas. No browser extensions. Works on single videos or thousands at a time.

YouTube Full Channel Transcripts Extractor

karamelo/youtube-full-channel-transcripts-extractor

With only the channel or playlist link You can extract 1 to 1000s of all the transcripts of a channel, be it videos or shorts or streams/lives or even podcasts and playlists, you name it. Get all the transcripts/captions organized with video ID and title in a nice table or JSON or CSV to download.

2.7K

4.9

🌟 Youtube Transcript Scraper - $0.5 per 1k

supreme_coder/youtube-transcript-scraper

Scrape youtube transcripts in bulk. Provides videos details and transcript in different formats

782

5.0

Youtube Transcript Scraper

pintostudio/youtube-transcript-scraper

Looking for a reliable way to extract transcripts from YouTube videos? πŸŽ₯✨ Look no further! The YouTube-Transcript-Scraper has you covered. πŸš€ It effortlessly retrieves transcripts while offering additional valuable insights. Ready to start? Let’s scrape away! πŸ•΅οΈβ€β™‚οΈπŸ’»

19K

4.7

Fast YouTube Playlist Scraper API | Extract Videos & Metadata

apidojo/youtube-playlist-scraper

The ultimate solution for detailed YouTube playlist information. Enjoy unmatched speed and thoroughness in both search and direct video retrieval from playlists. Additionally, it's remarkably cost-effective at just $0.50 per 1000 videos!

359

5.0

YouTube Transcript/Metadata Scraper πŸ˜‹

toludare/youtube-metadata-scraper-all

Introducing the most comprehensive and robust YouTube metadata web scraper on Apify. Get video details, AI summary, creator/channel details, engagement statistics, transcripts, and more from YouTube videos and shorts via a single interface.