YouTube Video Description Extractor
Pricing
from $2.99 / 1,000 video descriptions
YouTube Video Description Extractor
Extract complete descriptions from YouTube videos automatically. Perfect for content analysis, SEO research, and marketing insights. Supports batch processing with proxy integration.
Pricing
from $2.99 / 1,000 video descriptions
Rating
0.0
(0)
Developer
w3crawler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract full public YouTube video descriptions and source-provided metadata from watch-page HTML. The actor uses ordinary public HTTP requests and does not use private YouTube clients, browser fingerprinting, stealth controls, or credential discovery.
Features
- Accepts watch, Shorts, live, embed, youtu.be URLs, and bare 11-character video IDs.
- Deduplicates inputs and applies a bounded item limit, retry count, delay, and timeout.
- Captures the description, description length, hashtags, links, tags, title, channel identity, subscriber text, thumbnails, views, likes, comments, duration, publication dates, category, live state, age/safety flags, and provenance.
- Emits exact four-field diagnostics (
url,error,errorCode,scrapedAt) for failed public pages when diagnostics are enabled. - Writes a validated
OUTPUTrun summary with item, request, failure, blocked, and proxy counters. - Supports direct access and an explicitly configured standard Apify Proxy route or fallback.
Input
| Field | Type | Default | Description |
|---|---|---|---|
videoUrls | array | — | Public YouTube URLs or IDs. |
videoIds | array | — | Additional bare 11-character IDs. |
maxItems | integer | 50 | Maximum unique videos, from 1 to 200. |
includeDiagnostics | boolean | true | Include one diagnostic row for a failed input/page. |
enableProxyFallback | boolean | true | Try the configured Apify Proxy after direct access fails. |
maxRetries | integer | 2 | Retries per public page, from 0 to 3. |
requestDelayMs | integer | 250 | Delay between requests, from 0 to 5000 ms. |
requestTimeoutSecs | integer | 60 | Request timeout, from 15 to 180 seconds. |
proxyConfiguration | object | — | Standard Apify Proxy options. Proxy URLs must be credential-free. |
At least one of videoUrls or videoIds is required. The runtime rejects unknown fields, unrelated URLs, credentials, and unsafe proxy options before network work begins.
Dataset record
Successful records use recordType: "youtube_video_description" and include:
videoId, originalUrl, url, sourceUrl, title, description, descriptionLength, hashtags, hashtagCount, links, linkCount, tags, channelName, channelId, channelUrl, subscriberCountText, avatarUrl, thumbnail, thumbnails, thumbnailCount, viewCount, likeCount, commentCount, durationSeconds, duration, publishedDate, uploadDate, category, isLive, isLiveNow, isUpcoming, ageRestricted, isFamilySafe, isCrawlable, licensedContent, allowRatings, metadataSource, extractionMethod, sourceType, source, and scrapedAt.
If a public source does not expose an optional field, it is omitted. Empty descriptions are represented by descriptionLength: 0; no fabricated or private values are added.
Local verification
npm cinpm testnpx --yes apify validate-schema .actor/input_schema.jsonnpx --yes apify run --purge --input-file qa-inputs/youtube-description-extractor/local-validation.jsonnpm run validate-dataset
The cloud QA input enables the standard Apify Proxy route. After deployment, call the actor with the direct and cloud QA inputs and inspect the dataset plus OUTPUT key-value record.