YouTube Scraper | Videos, Channels, Search & Comments
Pricing
from $2.00 / 1,000 actor starteds
YouTube Scraper | Videos, Channels, Search & Comments
Alternative YouTube API with no limits or quotas. Extract video details (views, likes, publish date, description), channel video listings, search results, and comments. No login, no browser, no proxy. $0.002/run + $0.0007/video + $0.00018/comment.
Pricing
from $2.00 / 1,000 actor starteds
Rating
0.0
(0)
Developer
Hriday Rungta
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Extracts YouTube video details, channel video listings, search results, and video comments using YouTube's own public pages and its internal "innertube" API. No login, no API key sign-up, no browser, no proxy.
What you get
- Video details: title, channel, view count, like count, publish date, upload date, category, description, keywords/tags, duration, live-stream flag, thumbnail.
- Channel videos: a channel's videos (title, view count, published time, duration, thumbnail), paginated past the first page via YouTube's own innertube API.
- Search results: matching videos (title, channel, view count, published time, duration), also paginated.
- Comments: top-level comments on a video (author, text, like count, reply count, publish time, pinned flag), also paginated.
- Incremental mode: track one or many channels over time. Each run after the first returns only videos published since the last run — no re-scraping, no re-paying for old videos.
How this works (honestly)
YouTube's own pages embed the same JSON the site's front-end uses to render itself server-side — ytInitialPlayerResponse (video details) and ytInitialData (channel/search/watch-page context) — plus a ytcfg blob carrying an INNERTUBE_API_KEY. That key unlocks YouTube's internal "innertube" API (/youtubei/v1/browse, /next, /search), the same well-documented, widely-used mechanism tools like yt-dlp rely on for pagination. This Actor:
- Fetches the relevant public page (a video, a channel's
/videostab, or a search results page). - Parses the embedded JSON for the first page of results.
- Follows the page's own continuation token through the innertube API for further pages, anonymously — confirmed working live for channel videos, search results, and comments alike.
No headless browser, no residential proxy, no login wall to fight — because there isn't one. That keeps this fast, reliable, and cheap, and that cost is passed on to you.
One honesty note: only top-level comments are extracted. Expanding every reply thread would mean a separate continuation call per comment, which turns an unpredictable cost into a genuinely unbounded one — so replies are left uncollected, though each comment's replyCount tells you how many exist.
Incremental mode (channels only)
Set mode: "changes". On a channel's first run, it seeds from firstRunSince (default 30 days back). Every run after that resumes from a per-channel high-water mark stored in a key-value store. Channel grids only expose a relative publish time ("12d ago", "2w ago", "1mo ago" — confirmed live), not an exact timestamp, so the mark uses that as an approximate cutoff; a remembered set of video ids is the real safety net that guarantees no video is ever billed twice, even right at the boundary. A run cut short by your budget still advances the mark safely.
Input at a glance
| Field | Description |
|---|---|
videoUrls | Videos to fetch full details for — a URL or bare 11-character id, one per line. |
channels | Channels to list videos from — a handle (@nasa), a full URL, or a UC... id. |
searchQueries | Search terms to run, one per line. |
commentVideoUrls | Videos to fetch top-level comments for (separate budget from the above). |
mode | "all" (default) or "changes" (incremental) — channels only. |
maxItems | Budget cap on billed video rows (details + channel + search combined). |
maxComments | Budget cap on billed comment rows. Set 0 to disable comments. |
maxCommentsPerVideo | Cap on comments pulled from any single video. |
maxPagesPerSource | Cap on innertube pagination pages per channel/search/comment video. |
firstRunSince | How far back a channel's first incremental run looks (e.g. "30 days"). |
Billing (pay-per-event)
| Event | Price |
|---|---|
| Actor started | $0.002 — charged once per run, regardless of results |
| Video scraped | $0.0007 — video details, a channel's video, or a search result |
| Comment scraped | $0.00018 |
Real-measured cost on Apify's own infrastructure is dominated by fixed per-run overhead (well under $0.001 even for a large run), so pricing is a flat per-event rate with no hidden per-GB or "with extra fields" tier — every row already includes everything this Actor can extract for it.