YouTube Video Scraper avatar

YouTube Video Scraper

Pricing

$18.00 / 1,000 results

Go to Apify Store
YouTube Video Scraper

YouTube Video Scraper

🎬 Extract YouTube video metadata, comments, captions, and channel info at scale. Pull titles, views, likes, durations, and thumbnails for any search query. Perfect for content research, competitor benchmarking, and NLP pipelines. Optional comment and subtitle extraction for deep analysis.

Pricing

$18.00 / 1,000 results

Rating

0.0

(0)

Developer

Luan M.

Luan M.

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

YouTube Video Scraper — Apify Actor

Scrapes YouTube video metadata, comments, transcripts, and channel information using Crawlee + Playwright.

Features

  • ✅ Extract video title, description, views, likes, duration, publish date
  • ✅ Channel name and URL
  • ✅ Video tags and thumbnail URL
  • ✅ Comments — author, text, date (optional)
  • ✅ Transcripts / captions (optional)
  • ✅ Search by query
  • ✅ Scrape all videos from a channel
  • ✅ Start from any list of video or channel URLs
  • ✅ Proxy support via Apify proxy
  • ✅ Configurable limits (max videos, max comments)

Input

FieldTypeDefaultDescription
startUrlsarray[]YouTube video or channel URLs
searchQuerystringYouTube search query
channelUrlstringYouTube channel URL (e.g. https://www.youtube.com/@channel)
maxVideosinteger10Max videos to scrape (1–500)
proxyConfigurationobjectApify proxyProxy config
includeCommentsbooleanfalseScrape comments?
maxCommentsinteger50Max comments per video (0–500)
includeTranscriptsbooleanfalseScrape transcripts?
languagestringenLanguage code for UI / captions

At least one of startUrls, searchQuery, or channelUrl must be provided.

Output

Each result is a JSON object with:

{
"url": "https://www.youtube.com/watch?v=...",
"title": "Video Title",
"channelName": "Channel Name",
"channelUrl": "https://www.youtube.com/@channel",
"views": 123456,
"likes": 7890,
"publishDate": "Apr 15, 2025",
"description": "Full video description...",
"tags": ["tag1", "tag2"],
"duration": "12:34",
"thumbnail": "https://i.ytimg.com/vi/.../hqdefault.jpg",
"comments": [
{
"author": "User Name",
"text": "Great video!",
"date": "2 days ago"
}
],
"transcript": "Full transcript text..."
}

If a video fails to scrape, the result contains url and an error field.

Local Development

# Install dependencies
npm install
# Syntax check
npm run check
# Run (requires Apify API token in env)
npm start

Deployment

Deploy to Apify Console:

$npx apify push

Or use the Apify CLI:

npm install -g apify-cli
apify push

License

Apache 2.0