TikTok Transcript Scraper
by sociavault
Extract TikTok video transcripts and captions in multiple languages. Perfect for content analysis, accessibility, subtitle extraction, and understandi...
Opens on Apify.com
About TikTok Transcript Scraper
Extract TikTok video transcripts and captions in multiple languages. Perfect for content analysis, accessibility, subtitle extraction, and understanding video content without watching.
What does this actor do?
TikTok Transcript Scraper is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
TikTok Transcript Scraper Extract TikTok video transcripts and captions in multiple languages. Perfect for content analysis, accessibility, SEO, and subtitle extraction. ## Features ✅ No TikTok login required - Extract transcripts from public videos ✅ Bulk processing - Process multiple videos in one run ✅ Multi-language support - Get transcripts in English, Spanish, French, German, and more ✅ WebVTT format - Industry-standard subtitle format with timestamps ✅ Fast & reliable - Built on enterprise-grade infrastructure ✅ Affordable pricing - 1 credit per video ✅ Easy to use - Simple input, JSON/CSV output ## What data can you extract? For each TikTok video, you'll get: - 📝 Full Transcript: Complete video captions/subtitles - ⏱️ Timestamps: WebVTT format with precise timing - 🌍 Language: Specify language code for transcript - ✅ Availability Status: Know if transcript exists - 📊 Character Count: Length of transcript ## Input The actor accepts the following input parameters: json { "videoUrls": [ "https://www.tiktok.com/@stoolpresidente/video/7488736374602927402", "https://www.tiktok.com/@khaby.lame/video/7129994335991368965", "https://vm.tiktok.com/ZMabcdef/" ], "language": "en" } ### Input Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | videoUrls | Array | Yes | List of TikTok video URLs to extract transcripts from | | language | String | No | Language code for transcript (default: "en") | ### Supported Languages Common language codes: - en - English (default) - es - Spanish - fr - French - de - German - pt - Portuguese - it - Italian - ja - Japanese - ko - Korean - zh - Chinese - ar - Arabic - hi - Hindi - ru - Russian ### Supported URL Formats ✅ Full TikTok URL: https://www.tiktok.com/@username/video/1234567890 ✅ Short TikTok URL: https://vm.tiktok.com/ZMabcdef/ ✅ With URL parameters: https://www.tiktok.com/@username/video/1234567890?lang=en ## Output The actor stores results in the default dataset. You can export data in JSON, CSV, Excel, or other formats. ### Example Output (With Transcript) json { "success": true, "url": "https://www.tiktok.com/@stoolpresidente/video/7488736374602927402", "videoId": "7488736374602927402", "language": "en", "hasTranscript": true, "transcript": "WEBVTT\n\n\n00:00:00.380 --> 00:00:03.600\nBagels to make him dance. Bagels to make him dance.\n\n00:00:03.700 --> 00:00:06.760\nBagels to make him dance. Bagels to make him dance.\n\n00:00:06.900 --> 00:00:08.400\nBagels to make him dance.\n", "characterCount": 185 } ### Example Output (No Transcript) json { "success": true, "url": "https://www.tiktok.com/@username/video/1234567890", "videoId": "1234567890", "language": "en", "hasTranscript": false, "transcript": null, "message": "Video does not have captions/transcript available" } ### Output Fields | Field | Type | Description | |-------|------|-------------| | success | Boolean | Whether the scrape was successful | | url | String | TikTok video URL | | videoId | String | TikTok video ID | | language | String | Language code used | | hasTranscript | Boolean | Whether transcript is available | | transcript | String/null | Full transcript in WebVTT format (null if unavailable) | | characterCount | Integer | Length of transcript (only if available) | | message | String | Status message (only if no transcript) | ### WebVTT Format Transcripts are returned in WebVTT (Web Video Text Tracks) format: WEBVTT 00:00:00.380 --> 00:00:03.600 First line of text here 00:00:03.700 --> 00:00:06.760 Second line of text here This format includes: - Precise timestamps (milliseconds) - Line breaks for readability - Industry-standard format compatible with video players ### Error Response Format When a video fails to scrape: json { "success": false, "url": "https://www.tiktok.com/@username/video/invalid", "language": "en", "hasTranscript": false, "error": "Video not found or private" } ## Use Cases 📝 Content Analysis - Analyze spoken content in videos - Extract key phrases and topics - Sentiment analysis on speech 🌍 Accessibility - Generate subtitles for deaf/hard of hearing - Create accessible video content - Comply with accessibility standards 🔍 SEO & Marketing - Extract video content for SEO - Create blog posts from video content - Generate video summaries 📊 Research & Analytics - Study language patterns in viral videos - Analyze trending topics - Track messaging and narratives 🤖 AI & Machine Learning - Training data for NLP models - Speech-to-text validation - Content moderation datasets 🎬 Content Creation - Repurpose video content - Create written content from videos - Generate video descriptions ## Tips & Best Practices 💡 Optimize Your Scraping - Not all videos have transcripts (especially older ones) - Use correct language code for best results - Test with a few videos first ⚡ Performance Tips - The actor processes 10 videos in parallel - Expect ~2-3 seconds per video - Large batches work efficiently with automatic parallelization 🎯 Best Practices - Check hasTranscript field before using transcript - Export to JSON to preserve WebVTT formatting - Use CSV for quick transcript availability check ## Transcript Availability When transcripts ARE available: - Creator manually added captions - Auto-captions were generated by TikTok - Video has speech/dialogue When transcripts are NOT available: - Video has no speech (music only) - Creator disabled captions - Very old videos (before auto-captions) - Private or deleted videos ## Error Handling The actor handles errors gracefully: ✅ Successful with Transcript: json { "success": true, "hasTranscript": true, "transcript": "WEBVTT..." } ✅ Successful without Transcript: json { "success": true, "hasTranscript": false, "message": "Video does not have captions/transcript available" } ❌ Error Response: json { "success": false, "hasTranscript": false, "error": "Video not found or private" } 🔗 Related Actors: - TikTok Video Info Scraper - Get complete video data - TikTok Videos Scraper - Get all videos from a profile --- Built with ❤️ by SociaVault
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try TikTok Transcript Scraper now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- sociavault
- Pricing
- Paid
- Total Runs
- 392
- Active Users
- 30
Related Actors
🏯 Tweet Scraper V2 - X / Twitter Scraper
by apidojo
Instagram Scraper
by apify
TikTok Scraper
by clockworks
Instagram Profile Scraper
by apify
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support