TikTok & YouTube & Loom Transcript Extractor & Video Downloader avatar
TikTok & YouTube & Loom Transcript Extractor & Video Downloader

Pricing

$19.00/month + usage

Go to Apify Store
TikTok & YouTube & Loom Transcript Extractor & Video Downloader

TikTok & YouTube & Loom Transcript Extractor & Video Downloader

Extract transcripts and metadata from TikTok, YouTube, and Loom videos in WebVTT format. Supports multiple URLs, language selection, proxy configuration, and advanced output for accessibility, analysis, or repurposing.

Pricing

$19.00/month + usage

Rating

5.0

(6)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

17

Bookmarked

500

Total users

21

Monthly active users

6 hours ago

Last modified

Share

TikTok, YouTube & Loom Transcript Extractor And Videos Downloader

The TikTok, YouTube & Loom Transcript Extractor Scraper is a tool designed to automate the extraction of captions and transcripts from TikTok, YouTube, and Loom videos in WebVTT format. This scraper provides an easy way to retrieve video subtitles for accessibility, analysis, or repurposing.

It also supports downloading the actual video files (MP4) from all supported platforms.


Features

  • Extract Transcripts from TikTok, YouTube & Loom: Automatically retrieve captions in WebVTT format from TikTok, YouTube, and Loom videos.
  • Download Videos: Optionally download the video files (MP4) to the Apify Key-Value Store.
  • Start with Specific URLs: Input TikTok, YouTube, or Loom video URLs to fetch transcripts and/or videos.
  • Customizable Concurrency: Optimize the scraping speed with configurable concurrency settings.
  • Retry Mechanism: Ensure data accuracy with automatic retries for failed requests.
  • Proxy Support: Use proxies for anonymity and uninterrupted operations.
  • YouTube Language Selection: Choose the transcript language for YouTube videos.
  • Include YouTube Video Details: Optionally include extra metadata for YouTube videos.

Input Configuration

Below is the structure of the input configuration for the scraper:

1. Start URLs

  • Title: Start URLs
  • Type: Array
  • Description: Specify the TikTok, YouTube, or Loom video URLs to scrape the transcript.
  • Editor: requestListSources
  • Example:
    { "url": "https://www.tiktok.com/@stoolpresidente/video/7451747413649263915" },
    { "url": "https://www.youtube.com/watch?v=aAkMkVFwAoo" },
    { "url": "https://www.loom.com/share/912e89a68ccc42c5ab5096fec7cd63d6" }

2. Download Video

  • Title: Download Video
  • Type: Boolean
  • Description: If true, the scraper will download the video file (MP4) and save it to the Key-Value Store. The public URL to the file will be included in the output.
  • Default: false

3. Max Concurrency

  • Title: Max Concurrency
  • Type: Integer
  • Description: Maximum number of pages that can be processed simultaneously.
  • Default: 10

4. Min Concurrency

  • Title: Min Concurrency
  • Type: Integer
  • Description: Minimum number of pages that will be processed simultaneously.
  • Default: 1

5. Max Request Retries

  • Title: Max Request Retries
  • Type: Integer
  • Description: Number of retries for a failed request before the scraper gives up.
  • Default: 100

6. Include YouTube Video Details

  • includeYoutubeVideosDetails: Boolean
  • Description: If true, includes extra metadata for YouTube videos.

7. YouTube Transcript Language

  • youtubeTranscriptLanguage: String
  • Description: Language code for YouTube transcript extraction (e.g., "en").

8. Proxy Configuration

  • proxy: Object
  • Description: Configure proxy servers for secure and anonymous scraping.
  • Default:
    {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
    }
  • apifyProxyCountry: String
  • Description: Custom proxy configuration with proxyUrls array.
  • Details: For more information on proxy configuration, refer to Apify Proxy Configuration.

Example Input

{
"startUrls": [
{ "url": "https://www.tiktok.com/@stoolpresidente/video/7451747413649263915" },
{ "url": "https://www.youtube.com/watch?v=aAkMkVFwAoo" },
{ "url": "https://www.loom.com/share/912e89a68ccc42c5ab5096fec7cd63d6" }
],
"downloadVideo": true,
"maxConcurrency": 10,
"minConcurrency": 1,
"maxRequestRetries": 100,
"maxItems": 20,
"includeYoutubeVideosDetails": true,
"youtubeTranscriptLanguage": "en",
"proxy": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Output

The scraper produces an output containing the transcript in WebVTT format. If downloadVideo is enabled, it also provides the public URL to the downloaded video file.

Video Downloads

When Download Video is enabled, videos are saved to the default Key-Value Store. The output will include a downloadedVideo field with the public URL:

{
"downloadedVideo": "https://api.apify.com/v2/key-value-stores/STORE_ID/records/VIDEO_FILENAME.mp4"
}

Output TikTok sample

{
"transcript": "WEBVTT\n\n\n00:00:00.260 --> 00:00:01.500\nWatch out for the snow storm,\n\n00:00:01.501 --> 00:00:02.621\npresident. Oh,\n\n00:00:02.622 --> 00:00:04.061\nhe said watch out for. No,\n\n00:00:04.062 --> 00:00:05.541\nI didn't know what the hell you were talking about.\n\n..."
}
  • transcript: Contains the WebVTT format captions from the TikTok video.

Transcript Format (WebVTT)

The captions are structured in WebVTT format with time codes and text:

WEBVTT
00:00:00.260 --> 00:00:01.500
Watch out for the snow storm,
00:00:01.501 --> 00:00:02.621
president. Oh,

Output Loom sample

{
"url": "https://www.loom.com/share/912e89a68ccc42c5ab5096fec7cd63d6",
"transcript": "Hey, Chanel here from the Loom team. I'm going to show you how to get started with Loom. First, an introduction to our different recorders. We have three different recorders you can choose from. The first is our desktop app, which downloads directly to your device. And this is my personal favorite because it has additional features like the drawing tool and speaker notes. Then we have our Chrome extension, which downloads directly to the Chrome browser. And this has seamless integrations with sites like Gmail. Now, if you're on the go, you can download our mobile apps on that are available on iOS and Android devices. Before you hit record, you're going to want to first take a look at the different capture modes you can record. You can record in screen and cam mode like I'm doing now by first choosing which part of your screen you want to capture. You can capture your full screen, a specific window, or if you're on our business or enterprise plan, you can use our custom size feature. Then you'll want to choose your camera source. If you only want to record your screen, you can go ahead and toggle off your camera here. If you want to record in our cam only mode, you can also do that here under your screen options. Then you'll want to choose your microphone source. If you want to take your camera bubble a step further, you can add different effects. You can add backgrounds, or if you want a bit of pizzazz, you can add a frame. If you're recording with the desktop app, you'll have the option to record with speaker notes, which you can jot down any thoughts that you want to reference during your recording, and don't worry, this won't be visible in your final world. You can also add a canvas background to your recording or a text layout if you want to jot down a few notes for your viewers. At the top right hand corner here you can further edit your recording settings by enhancing your recording with auto lighting. Under the video and audio tab you can edit your video quality. Under the preference and tab you You can check If you automatically have updates installed, you can also customize your keyboard shortcuts. Once you're ready to record, go ahead and click Start. Once you start recording, you'll see a control bar where you can track your recording time, and you can move this anywhere on your screen that best suits your recording. If you need a moment to collect your thoughts, you can always use our pause button here and resume at any moment. If you want to restart your recording because you made a few mishaps in the beginning, if you use the restart button or if you want to completely scrap your recording, you can use the cancel option. If you're on our business education or enterprise plan, you can use our drawing tool to highlight certain features on your screen. And my personal favorite is the confetti feature for a bit of celebration in your recording. Once you're finished recording, you can click the red button here and you'll instantly be redirected to your video share page. embed your video into a website you can grab the embed code here and that about How does it? Thanks so much for watching and happy looming!",
"transcriptVTT": "WEBVTT\r\n\r\n1\r\n00:00:01.154 --> 00:00:04.774\r\n<v 0>Hey, Chanel here from the Loom team. I'm going to show you how to</v>\r\n\r\n2\r\n00:00:04.774 --> 00:00:07.704\r\nget started with Loom. First,\r\n\r\n3\r\n00:00:07.964 --> 00:00:10.124\r\nan introduction to our different recorders.\r\n...",
"transcriptSRT": "1\n00:00:01,154 --> 00:00:04,774\n<v 0>Hey, Chanel here from the Loom team. I'm going to show you how to</v>\n\n2\n00:00:04,774 --> 00:00:07,704\nget started with Loom. First,\n\n3\n00:00:07,964 --> 00:00:10,124\nan introduction to our different recorders.\n...",
"title": "Getting Started with Loom",
"uploadDateISO8601": "2023-08-19T00:19:41.112Z",
"durationISO8601": "PT355.166S",
"uploadDate": "2023-08-19",
"duration": "00:05:55",
"creator": "Chanel Lovell",
"error": null,
"speakers": null,
"speakerCount": null,
"speakerSegmentGrouping": true,
"videoKey": "video-912e89a68ccc42c5ab5096fec7cd63d6.mp4",
"videoUrl": "https://api.apify.com/v2/key-value-stores/06c851d5-8f9a-4e30-9a2a-010b777052c6/records/video-912e89a68ccc42c5ab5096fec7cd63d6-1769431472951.mp4",
"videoError": null
}

Output Field Explanations (Loom)

The Loom transcript extractor provides metadata about the video along with its transcript in multiple formats.

  • url: The original URL of the Loom video.
  • transcript: The full transcript text as a single string.
  • transcriptVTT: The transcript in WebVTT format, suitable for subtitles.
  • transcriptSRT: The transcript in SRT format, another common subtitle format.
  • title: The title of the Loom video.
  • creator: The name of the user who created the video.
  • uploadDate: The date the video was uploaded (YYYY-MM-DD).
  • duration: The duration of the video in HH:MM:SS format.
  • uploadDateISO8601: The upload date in ISO 8601 format.
  • durationISO8601: The duration in ISO 8601 duration format.
  • videoUrl: The public URL to the downloaded video file (if downloadVideo is enabled).
  • videoKey: The filename used for the video in the Key-Value Store.
  • error: Error message if the extraction failed, otherwise null.
  • speakers: Array of speakers identified in the video (if available).
  • speakerCount: The number of speakers identified.
  • speakerSegmentGrouping: Boolean indicating if the transcript is grouped by speaker segments.
  • videoError: Error message if the video download failed, otherwise null.

Output Youtube sample

{
"transcript": [
{
"text": "(light cheerful music)",
"startMs": "3760",
"endMs": "7010",
"startTimeText": "0:03"
},
{
"text": "♪ I don't want a lot for Christmas ♪",
"startMs": "10482",
"endMs": "15482",
"startTimeText": "0:10"
},
{
"text": "♪ There is just one thing I need ♪",
"startMs": "16724",
"endMs": "21100",
"startTimeText": "0:16"
},
{
"text": "♪ I don't care about the presents ♪",
"startMs": "21100",
"endMs": "24788",
"startTimeText": "0:21"
},
{
"text": "♪ Underneath the Christmas tree ♪",
"startMs": "24788",
"endMs": "28210",
"startTimeText": "0:24"
},
{
"text": "♪ I just want you for my own ♪",
"startMs": "28210",
"endMs": "32479",
"startTimeText": "0:28"
},
...
],
"transcript_only_text": "(light cheerful music) ♪ I don't want a lot for Christmas ♪ ♪ There is just one thing I need ♪ ♪ I don't care about the presents ♪ ♪ Underneath the Christmas tree ♪ ♪ I just want you for my own ♪ ♪ More than you could ever know ♪ ♪ Make my wish come true ♪ ♪ All I want for Christmas is you ♪ ♪ Yeah ♪ ♪ I don't want a lot for Christmas ♪ ♪ There is just one thing I need ♪ ♪ And I don't care about the presents ♪ ♪ Underneath the Christmas tree ♪ ♪ I don't need to hang my stocking\nthere upon the fireplace ♪ ♪ Santa Claus won't make me happy ♪ ♪ With a toy on Christmas Day ♪ ♪ I just want you for my own ♪ ♪ More than you could ever know ♪ ♪ Make my wish come true ♪ ♪ All I want for Christmas is you ♪ ♪ You, baby ♪ ♪ Oh, I won't ask for\nmuch this Christmas ♪ ♪ I won't even wish for snow ♪ ♪ And I, I'm just gonna keep on waiting ♪ ♪ Underneath the mistletoe ♪ ♪ I won't make a list and send it ♪ ♪ To the North Pole for Saint Nick ♪ ♪ I won't even stay awake to\nhear those magic reindeer click ♪ ♪ 'Cause I just want you here tonight ♪ ♪ Holding on to me so tight ♪ ♪ What more can I do ♪ ♪ Oh, baby, all I want\nfor Christmas is you ♪ ♪ You, baby ♪ ♪ Oh oh, all the lights are\nshining so brightly everywhere ♪ ♪ So brightly, baby ♪ ♪ And the sound of children's\nlaughter fills the air ♪ ♪ And everyone is singing ♪ ♪ I hear those sleigh bells ringing ♪ ♪ Santa, won't you bring\nme the one I really need ♪ ♪ Won't you please bring my baby to me ♪ ♪ Oh, I don't want a lot for Christmas ♪ ♪ This is all I'm asking for ♪ ♪ I just wanna see my baby\nstanding right outside my door ♪ ♪ Oh, I just want you for my own ♪ ♪ More than you could ever know ♪ ♪ Make my wish come true ♪ ♪ Oh, baby, all I want\nfor Christmas is you ♪ ♪ You, baby ♪ ♪ All I want for Christmas is you, baby ♪ ♪ All I want for Christmas is you, baby ♪ ♪ All I want for Christmas is you, baby ♪ ♪ All I want for Christmas is you, baby ♪ ♪ All I want for Christmas is you, baby ♪",
"videoId": "aAkMkVFwAoo",
"title": "Mariah Carey - All I Want for Christmas Is You (Make My Wish Come True Edition)",
"lengthSeconds": "243",
"keywords": [
"all want for christmas is you",
"christmas songs",
"mariah carey all want for christmas",
"all want for christmas",
"merry christmas",
"mariah carey christmas",
"mariah carey",
"christmas",
"christmas song",
"last christmas",
"christmas music",
"always be my baby",
"Mariah carey hero",
"oh santa",
"holy night",
"we belong together",
"Jennifer Lopez",
"beyonce",
"Whitney Houston",
"pop music",
"90s pop",
"2000s pop",
"tiktok",
"tiktok trend",
"Holiday",
"Pop"
],
"channelId": "UClS0wn3LPs9jdX_yt2g1k8w",
"isOwnerViewing": false,
"shortDescription": "\"All I Want For Christmas Is You\" by Mariah Carey (Make My Wish Come True Edition)\nListen to Mariah Carey: https://MariahCarey.lnk.to/listenYD \nSubscribe to the official Mariah Carey YouTube channel: https://MariahCarey.lnk.to/subscribe_YD\n \nWatch more Mariah Carey videos: https://MariahCarey.lnk.to/listen_YC/youtube\n \nFollow Mariah Carey\nFacebook: https://MariahCarey.lnk.to/followFI\nInstagram: https://MariahCarey.lnk.to/followII\nTwitter: https://MariahCarey.lnk.to/followTI\nWebsite: https://MariahCarey.lnk.to/followWI\nYouTube: https://MariahCarey.lnk.to/subscribeYD\nSpotify: https://MariahCarey.lnk.to/followSI\n \nLyrics: \nI just want you for my own (Ooh)\nMore than you could ever know (Ooh)\nMake my wish come true\nAll I want for Christmas is you\nYou, baby\n \n#MariahCarey #AllIWantForChristmasIsYou #MakeMyWishComeTrue",
"isCrawlable": true,
"thumbnail": {
"thumbnails": [
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/hqdefault.jpg?sqp=-oaymwEmCKgBEF5IWvKriqkDGQgBFQAAiEIYAdgBAeIBCggYEAIYBjgBQAE=&rs=AOn4CLBVNtG-3snews4SkuVgHePgFV50bA",
"width": 168,
"height": 94
},
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/hqdefault.jpg?sqp=-oaymwEmCMQBEG5IWvKriqkDGQgBFQAAiEIYAdgBAeIBCggYEAIYBjgBQAE=&rs=AOn4CLCRGI_2lb-QxPufhBHOrgB6n2zOYw",
"width": 196,
"height": 110
},
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/hqdefault.jpg?sqp=-oaymwEnCPYBEIoBSFryq4qpAxkIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB&rs=AOn4CLB97lSkpMJKiz4s8WQTKJIEkd8tdw",
"width": 246,
"height": 138
},
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/hqdefault.jpg?sqp=-oaymwEnCNACELwBSFryq4qpAxkIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB&rs=AOn4CLBFav8lBGECh5aDt2erS3N_siXOTQ",
"width": 336,
"height": 188
},
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/maxresdefault.jpg?v=5dfa53d4",
"width": 1920,
"height": 1080
}
]
},
"allowRatings": true,
"viewCount": "739849592",
"author": "MariahCareyVEVO",
"isLowLatencyLiveStream": false,
"isPrivate": false,
"isUnpluggedCorpus": false,
"latencyClass": "MDE_STREAM_OPTIMIZATIONS_RENDERER_LATENCY_NORMAL",
"isLiveContent": false,
"microformat": {
"playerMicroformatRenderer": {
"thumbnail": {
"thumbnails": [
{
"url": "https://i.ytimg.com/vi/aAkMkVFwAoo/maxresdefault.jpg",
"width": 1280,
"height": 720
}
]
},
"embed": {
"iframeUrl": "https://www.youtube.com/embed/aAkMkVFwAoo?start=985",
"width": 1280,
"height": 720
},
"title": {
"simpleText": "Mariah Carey - All I Want for Christmas Is You (Make My Wish Come True Edition)"
},
"description": {
"simpleText": "\"All I Want For Christmas Is You\" by Mariah Carey (Make My Wish Come True Edition)\nListen to Mariah Carey: https://MariahCarey.lnk.to/listenYD \nSubscribe to the official Mariah Carey YouTube channel: https://MariahCarey.lnk.to/subscribe_YD\n \nWatch more Mariah Carey videos: https://MariahCarey.lnk.to/listen_YC/youtube\n \nFollow Mariah Carey\nFacebook: https://MariahCarey.lnk.to/followFI\nInstagram: https://MariahCarey.lnk.to/followII\nTwitter: https://MariahCarey.lnk.to/followTI\nWebsite: https://MariahCarey.lnk.to/followWI\nYouTube: https://MariahCarey.lnk.to/subscribeYD\nSpotify: https://MariahCarey.lnk.to/followSI\n \nLyrics: \nI just want you for my own (Ooh)\nMore than you could ever know (Ooh)\nMake my wish come true\nAll I want for Christmas is you\nYou, baby\n \n#MariahCarey #AllIWantForChristmasIsYou #MakeMyWishComeTrue"
},
"lengthSeconds": "243",
"ownerProfileUrl": "http://www.youtube.com/@MariahCareyVEVO",
"externalChannelId": "UClS0wn3LPs9jdX_yt2g1k8w",
"isFamilySafe": true,
"isUnlisted": false,
"hasYpcMetadata": false,
"viewCount": "739849592",
"category": "Music",
"publishDate": "2019-12-19T21:00:11-08:00",
"ownerChannelName": "MariahCareyVEVO",
"liveBroadcastDetails": {
"isLiveNow": false,
"startTimestamp": "2019-12-20T05:00:11+00:00",
"endTimestamp": "2019-12-20T05:06:09+00:00"
},
"uploadDate": "2019-12-19T21:00:11-08:00",
"isShortsEligible": false,
"externalVideoId": "aAkMkVFwAoo",
"likeCount": "6483757",
"canonicalUrl": "https://www.youtube.com/watch?v=aAkMkVFwAoo"
}
},
"captions": {
"playerCaptionsTracklistRenderer": {
"captionTracks": [
{
"baseUrl": "https://www.youtube.com/api/timedtext?v=aAkMkVFwAoo&ei=f681aKTUNaH31sQP8a-4YQ&opi=112496729&xoaf=5&hl=hr&ip=0.0.0.0&ipbits=0&expire=1748373999&sparams=ip,ipbits,expire,v,ei,opi,xoaf&signature=6D4061B1E750F9D72358BC2212EBFF26AA7423D7.A12F4FD68C7DCADDC114730E6F19F75884B0A787&key=yt8&lang=en&name=en",
"name": {
"simpleText": "Engleski - en"
},
"vssId": ".en.nP7-2PuUl7o",
"languageCode": "en",
"isTranslatable": true,
"trackName": "en"
}
],
"audioTracks": [
{
"captionTrackIndices": [
0
]
}
],
"defaultAudioTrackIndex": 0
}
}
}

Output Field Explanations (YouTube)

The YouTube transcript extractor provides detailed information about the video along with its transcript in a structured format. Here's a breakdown of the output fields:

Transcript Data

  • transcript: Array of objects containing the timed transcript segments
    • text: The actual text of the transcript segment
    • startMs: Start time of the segment in milliseconds
    • endMs: End time of the segment in milliseconds
    • startTimeText: Formatted start time (e.g., "0:03")
  • transcript_only_text: Complete transcript text as a single string, concatenating all segments

Video Metadata

  • videoId: YouTube's unique 11-character video identifier
  • title: Full title of the video
  • lengthSeconds: Total duration of the video in seconds
  • keywords: Array of SEO keywords/tags associated with the video
  • channelId: YouTube's unique identifier for the channel
  • isOwnerViewing: Boolean indicating if the video owner is viewing (typically false)
  • shortDescription: Full video description including links and metadata
  • isCrawlable: Boolean indicating if search engines can index this video
  • allowRatings: Boolean indicating if the video allows likes/dislikes
  • viewCount: Total number of video views (as a string)
  • author: Display name of the channel that uploaded the video
  • isLiveContent: Boolean indicating if this is a live stream

Thumbnails

  • thumbnail: Contains different resolution thumbnails
    • thumbnails: Array of thumbnail objects with different sizes
      • url: Image URL
      • width: Image width in pixels
      • height: Image height in pixels

Microformat Data

  • microformat: Detailed metadata in YouTube's microformat
    • playerMicroformatRenderer: Contains structured data about the video
      • publishDate: When the video was published (ISO 8601 format)
      • uploadDate: When the video was uploaded (ISO 8601 format)
      • viewCount: Number of views (redundant with root viewCount)
      • likeCount: Number of likes (if available)
      • category: Video category (e.g., "Music")
      • isFamilySafe: Boolean indicating if the content is family-friendly

Captions Information

  • captions: Details about available caption tracks
    • playerCaptionsTracklistRenderer: Contains caption track information
      • captionTracks: Array of available caption tracks
        • languageCode: BCP-47 language code (e.g., "en")
        • name: Display name of the language
        • isTranslatable: Boolean indicating if machine translation is available
      • audioTracks: Information about audio tracks and their associated captions
  • author: Name of the channel or content creator.
  • isPrivate: Boolean indicating if the video is set to private.
  • isUnpluggedCorpus: Boolean related to YouTube's content classification (usually false).
  • isLiveContent: Boolean indicating if the video is or was a live stream.
  • microformat: Object containing additional metadata about the video.
    • playerMicroformatRenderer: Contains details such as:
      • thumbnail: Main thumbnail image.
      • embed: Embed information (iframe URL, width, height).
      • title: Video title.
      • description: Video description.
      • lengthSeconds: Video duration in seconds.
      • ownerProfileUrl: URL to the channel's profile.
      • externalChannelId: Channel ID.
      • isFamilySafe: Boolean indicating if the video is family-friendly.
      • availableCountries: Array of country codes where the video is available.
      • isUnlisted: Boolean indicating if the video is unlisted.
      • hasYpcMetadata: Boolean for YouTube Premium content.
      • viewCount: Video view count.
      • category: Video category (e.g., "People & Blogs").
      • publishDate: Date and time when the video was published.
      • ownerChannelName: Name of the channel owner.
      • uploadDate: Date and time when the video was uploaded.
      • isShortsEligible: Boolean indicating if the video is eligible for YouTube Shorts.
      • externalVideoId: Video ID.
      • likeCount: Number of likes.
  • captions: Object containing information about available captions and translation languages.
    • playerCaptionsTracklistRenderer: Contains:
      • captionTracks: Array of available caption tracks (subtitles), each with:
        • baseUrl: URL to fetch the captions.
        • name: Name of the caption track.
        • vssId: Caption track ID.
        • languageCode: Language code of the captions.
        • kind: Type of captions (e.g., "asr" for auto-generated).
        • isTranslatable: Boolean indicating if the captions can be auto-translated.
        • trackName: Name of the track (if any).
      • audioTracks: Array of audio track objects.
      • translationLanguages: Array of available translation languages, each with:
        • languageCode: Language code.
        • languageName: Object with simpleText (full language name).
      • defaultAudioTrackIndex: Index of the default audio track.
  • transcript: Array of transcript segments, each with:
    • text: The spoken text for that segment.
    • startMs: Start time in milliseconds.
    • endMs: End time in milliseconds.
    • startTimeText: Human-readable start time (e.g., "0:02").
  • transcript_only_text: The full transcript as a single plain text string, with all

Note: Some fields (like microformat, captions, thumbnail) are nested objects and may contain additional subfields for advanced use cases.

Why Use This Scraper?

  • Ease of Use: Just provide the TikTok video URLs and extract captions effortlessly.
  • Customizable Settings: Adjust concurrency, retries, and proxy settings to fit your needs.
  • Accurate and Reliable: Automatically retries failed requests to minimize data loss.
  • Time-Saving: Automates manual effort of retrieving TikTok captions for multiple videos.

Notes

  • Ensure valid TikTok video URLs are provided in the startUrls field.
  • Proxies are recommended for large-scale scraping to prevent rate-limiting or IP bans.

Explore More Scrapers

If you found this Apify Smartbuyglasses Scraper useful, be sure to check out our other powerful scrapers and actors at memo23's Apify profile. We offer a wide range of tools to enhance your web scraping and automation needs across various platforms and use cases.

Support

Additional Services