Youtube Channel Scraper
Pricing
$19.99/month + usage
Youtube Channel Scraper
π₯ YouTube Channel Scraper extracts structured data from public channel & About pages β name, ID, description, keywords, links, country, creation date, subscribers, views, video count, playlists & latest uploads. π Ideal for SEO, competitor research, and influencer outreach. π
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
Scrapium
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Youtube Channel Scraper
The Youtube Channel Scraper is an Apify actor that extracts structured data from public YouTube channel pages at scale β including About info, videos, Shorts, live streams, and community posts β with independent sorting options for each content type. Built for marketers, developers, data analysts, and researchers, this youtube channel scraper tool solves manual research by delivering clean, analyzable datasets for channel intelligence, audience tracking, and competitive analysis. With async processing, intelligent proxy fallback, and robust pagination, it enables reliable, large-scale extraction workflows.
What data / output can you get?
Below are examples of real fields the actor saves to the dataset. You can export results as JSON, CSV, or Excel directly from Apify. π€
| Data type | Description | Example value |
|---|---|---|
| about.channelName | Channel display name | "MrBeast" |
| about.channelUsername | Handle extracted from vanity URL | "MrBeast" |
| about.channelId | YouTube channel ID (browseId) | "UCX6OQ3DkcsbYNE6H8uQQuVA" |
| about.numberOfSubscribers | Subscriber count text (normalized) | "453M" |
| about.channelTotalViews | Total channel views (parsed integer) | 102823749612 |
| about.channelTotalVideos | Total number of uploaded videos (parsed integer) | 929 |
| about.channelJoinedDate | Join date text (cleaned) | "Jan 2012" |
| about.channelLocation | Country/Location from About | "United States" |
| videos.id | Video ID for each channel video | "8bMh8azh3CY" |
| videos.title | Video title | "100 Pilots Fight For A Private Jet" |
| videos.viewCount | Parsed views for each video | 50075792 |
| videos.url | Canonical watch URL | "https://www.youtube.com/watch?v=8bMh8azh3CY" |
Bonus outputs include thumbnails, ordering indices, Shorts enrichment (likes/comments text, viewCount, captionsAvailable), live stream enrichment (liveChatId, concurrentViewers, isLiveNow), community post attachments (images/polls), and per-channel scrape stats. Results are nested by channel username for easy downstream processing.
Key features
-
π¦ Independent sorting per content type
Configure separate sort orders for videos, Shorts, posts, and live streams to scrape youtube channel videos list and prioritize the views, recency, or relevance that matters for your analysis. -
π‘οΈ Intelligent proxy fallback
Starts without proxy, automatically falls back to Apify datacenter proxy if blocked, then to residential proxy as needed β ensuring resilient youtube channel web crawler behavior for high-volume runs. -
β‘ Async pagination & retries
Built with aiohttp for concurrency, exponential backoff on failures, and robust pagination across videos, shorts, live streams, and posts to power bulk youtube channel data scraper workflows. -
π§© Structured, analytics-ready JSON
Output is grouped by channel username with clean objects for about, videos, shorts, live, posts, and roll-up stats β perfect for a youtube channel analytics scraper pipeline. -
π§ Enrichment for Shorts, Posts, and Live
Adds extra details like comments and likes text for Shorts and posts, plus liveChatId and concurrentViewers for live streams, improving the depth of your youtube channel video metadata scraper output. -
π Flexible inputs & normalization
Accepts full URLs, @handles, or bare usernames; automatic normalization ensures consistent requests across channels to extract youtube channel metadata at scale. -
π§ͺ Developer-friendly (Python + Apify SDK)
Written in Python with the Apify SDK; integrate via the Apify API in your stack or trigger from your youtube channel scraper python workflows.
How to use Youtube Channel Scraper - step by step
- Create or log in to your Apify account.
- Open the Youtube Channel Scraper actor in the Apify Console.
- Paste your channel identifiers into startUrls. You can use:
- Full URL: https://www.youtube.com/@MrBeast
- Handle: @PewDiePie
- Username: PewDiePie
- Adjust limits and sorting:
- maxResults controls how many items to return per category.
- Choose sortOrderVideos, sortOrderShorts, sortOrderPosts, sortOrderLiveStreams.
- Toggle content types to scrape using scrapeChannelInfo, scrapeVideos, scrapeShorts, scrapePosts, and scrapeLiveStreams.
- (Optional) Configure proxyConfiguration. The actor starts without proxy and falls back automatically if blocked.
- Click Start. Monitor logs for progress, pagination, and any proxy fallbacks.
- When finished, download results from the Dataset tab in JSON, CSV, or Excel.
Pro Tip: Use the Apify API to schedule runs, pipe results to data warehouses, or trigger downstream automations in your youtube channel scraping software workflows.
Use cases
| Use case name | Description |
|---|---|
| SEO & content research | Analyze upload cadence, engagement, and topics by sorting videos and Shorts by views or date using this youtube channel data extractor. |
| Influencer outreach & vetting | Assess creator scale (subscribers, views, verification) and recent performance to shortlist partners for campaigns. |
| Competitor tracking | Monitor competitor uploads, community posts, and live events to inform programming and timing decisions. |
| Market research & trend analysis | Aggregate multi-channel datasets to track category growth, content formats, and audience signals across niches. |
| Analytics & dashboarding | Feed structured JSON into BI tools to compute KPIs like total uploads, live activity, and engagement indicators. |
| Developer pipelines (API) | Orchestrate runs via Apify API in Python for an automated youtube channel api scraper that powers enrichment jobs. |
| Academic research | Collect longitudinal channel metadata and publishing patterns for reproducible studies using a reliable youtube channel web crawler. |
Why choose Youtube Channel Scraper?
Positioned for precision, automation, and reliability, this actor delivers production-ready extraction of public YouTube channel data.
- π― Accurate field parsing
Extracts about-page fields, normalized counts, and robust item metadata across videos, Shorts, live, and posts. - π Public data only
Works without login and targets publicly accessible endpoints to scrape youtube channel about page information safely. - π Scalable batch runs
Async pagination and concurrency enable reliable multi-channel runs for bulk datasets. - π§° Developer access
Built with Python and Apify SDK β integrate through the Apify API for automated pipelines or a youtube channel scraper python workflow. - π Easy exports & integration
Export to JSON/CSV/Excel and plug into CRMs, BI dashboards, or internal analytics tools. - π‘οΈ Robust proxy strategy
Automatic fallback from no-proxy to datacenter and residential ensures resilient operation under rate limiting. - π Better than adβhoc scripts/extensions
Avoid brittle browser extensions and unstable scripts with a structured, dataset-first, production-ready implementation.
In short, itβs a dependable youtube channel scraper tool for teams that need consistent, structured outputs and automation-ready infrastructure.
Is it legal / ethical to use Youtube Channel Scraper?
Yes β when used responsibly. This actor accesses public YouTube channel pages only and does not attempt to authenticate or access private data.
Guidelines for compliant use:
- Scrape only publicly available information from channels and their public tabs (About, Videos, Shorts, Live, Posts).
- Respect platform terms and applicable regulations (e.g., GDPR, CCPA).
- Use results for analysis and research; avoid abusive or spammy use.
- Verify compliance with your legal team for edge cases and specific jurisdictions.
Input parameters & output format
Example JSON input
{"startUrls": ["https://www.youtube.com/@MrBeast","@PewDiePie"],"maxResults": 50,"sortOrderVideos": "viewCount","sortOrderShorts": "date","sortOrderPosts": "date","sortOrderLiveStreams": "viewCount","scrapeChannelInfo": true,"scrapeVideos": true,"scrapeShorts": true,"scrapePosts": true,"scrapeLiveStreams": true,"proxyConfiguration": {"useApifyProxy": false}}
Parameter reference (from the actorβs input schema):
- startUrls (array, required) β List of YouTube channel URLs (e.g., https://www.youtube.com/@MrBeast), usernames (e.g., @MrBeast), or keywords to search for channels. Default: none.
- maxResults (integer) β Maximum number of results to scrape per category (videos, shorts, live streams, posts). Default: 10. Range: 1β1000.
- sortOrderVideos (string) β Sort order for videos (date, rating, relevance, title, viewCount). Default: "date".
- sortOrderShorts (string) β Sort order for shorts (date, rating, relevance, viewCount). Default: "date".
- sortOrderPosts (string) β Sort order for community posts (date, relevance). Default: "date".
- sortOrderLiveStreams (string) β Sort order for live streams (date, relevance, viewCount). Default: "date".
- scrapeChannelInfo (boolean) β Enable to scrape channel about information (description, subscribers, join date, etc.). Default: true.
- scrapeVideos (boolean) β Enable to scrape channel videos. Default: true.
- scrapeShorts (boolean) β Enable to scrape YouTube Shorts. Default: true.
- scrapePosts (boolean) β Enable to scrape community posts. Default: true.
- scrapeLiveStreams (boolean) β Enable to scrape live streams. Default: true.
- proxyConfiguration (object) β Choose which proxies to use. The actor will start with no proxy, fallback to datacenter proxy if blocked, then to residential proxy if datacenter fails. Default prefill: {"useApifyProxy": false}.
Notes:
- startUrls is required. All other fields are optional with defaults.
- You can input full URLs, @handles, or bare usernames β the actor normalizes these internally.
Example JSON output
The actor pushes a single, top-level summary object to the dataset that includes per-channel data keyed by channel username:
{"scrapedAt": "2026-04-12T13:17:48.389Z","totalChannels": 2,"maxResultsPerCategory": 50,"MrBeast": {"about": {"channelDescription": "I make videos...","channelJoinedDate": "Jan 2012","channelDescriptionLinks": [{ "text": "Website", "url": "https://mrbeast.com" }],"channelLocation": "United States","channelUsername": "MrBeast","channelAvatarUrl": "https://yt3.ggpht.com/...","channelBannerUrl": "https://yt3.ggpht.com/...","channelTotalVideos": 929,"channelTotalViews": 102823749612,"numberOfSubscribers": "453M","isChannelVerified": true,"channelName": "MrBeast","channelUrl": "https://www.youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA","channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA","inputChannelUrl": "https://www.youtube.com/@MrBeast","isAgeRestricted": false},"videos": [{"id": "8bMh8azh3CY","title": "100 Pilots Fight For A Private Jet","duration": "28:46","channelName": "MrBeast","channelUsername": "MrBeast","channelUrl": "https://www.youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA","date": "1 day ago","url": "https://www.youtube.com/watch?v=8bMh8azh3CY","viewCount": 50075792,"fromYTUrl": "https://www.youtube.com/@MrBeast/videos","type": "video","thumbnailUrl": "https://i.ytimg.com/vi/8bMh8azh3CY/hqdefault.jpg","input": "https://www.youtube.com/@MrBeast","order": 0}],"shorts": [{"videoType": "shorts","videoId": "AbCdEfG1234","title": "We broke a world record!","videoUrl": "https://www.youtube.com/shorts/AbCdEfG1234","viewsText": "2.3M views","thumbnailUrl": "https://i.ytimg.com/vi/AbCdEfG1234/hqdefault.jpg","accessibilityText": "We broke a world record!, 2.3M views - Short play","channelUsername": "MrBeast","fromYTUrl": "https://www.youtube.com/@MrBeast/shorts","input": "https://www.youtube.com/@MrBeast","order": 0,"commentsCount": 1200,"commentsCountText": "1,200 comments","commentsTurnedOff": false,"likesCount": 54000,"likesCountText": "54K","viewCount": 2300000,"channelName": "MrBeast","channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA","channelHandle": "@MrBeast","publishDate": "2025-11-12","description": "Behind the scenes...","captionsAvailable": true,"timestampText": "2 days ago"}],"live": [{"videoId": "Live123","title": "Live challenge now!","description": "Join us live","thumbnailUrl": "https://i.ytimg.com/vi/Live123/hqdefault.jpg","videoUrl": "https://www.youtube.com/watch?v=Live123","channelName": "MrBeast","channelUrl": "https://www.youtube.com/@MrBeast","publishedAt": "Streamed 3 hours ago","duration": "LIVE","viewsCount": 120000,"viewsCountText": "120,000 watching now","isLive": true,"isUpcoming": false,"scheduledStartTime": "","order": 0,"actualStartTime": "2026-04-12T10:00:00Z","liveChatId": "CiABAA","isLiveNow": true,"concurrentViewers": "120,000 watching"}],"posts": [{"postId": "Ugkx123example","type": "image","textContent": "Which one should we do next?","imageUrls": ["https://yt3.ggpht.com/..."],"pollOptions": [],"likesCount": 440600,"likesCountText": "440,600","commentsCount": 5200,"commentsCountText": "5,200 comments","publishedAt": "2 days ago","postUrl": "https://www.youtube.com/post/Ugkx123example","channelName": "MrBeast","channelUrl": "https://www.youtube.com/@MrBeast","order": 0}],"stats": {"totalVideos": 50,"totalShorts": 50,"totalLiveStreams": 38,"totalPosts": 50,"scrapingTimeSeconds": 42.37}},"summary": {"totalVideos": 100,"totalShorts": 50,"totalLiveStreams": 38,"totalPosts": 96,"totalScrapingTimeSeconds": 84.12}}
Output notes:
- Missing or non-parsable counts may be 0 or null depending on the source (e.g., commentsCount for some Shorts/posts).
- Live data like concurrentViewers or liveChatId is only present when available on the video page.
- Keys are grouped under each channel username for straightforward bulk processing.
FAQ
Do I need to log in to use this scraper?
No. The actor works on publicly available YouTube pages without authentication. It targets the public About, Videos, Shorts, Live, and Posts tabs only.
Can it scrape multiple channels in one run?
Yes. Provide an array of startUrls (URLs, @handles, or usernames) and the actor will normalize and process them sequentially, making it a capable bulk youtube channel data scraper.
Which content types are supported?
The actor supports About page info, videos, Shorts, live streams, and community posts. It does not scrape playlists or full video comments; it focuses on channel-level content lists and metadata.
Can I sort the results by views or date?
Yes. You can independently set sortOrderVideos, sortOrderShorts, sortOrderPosts, and sortOrderLiveStreams to organize results by date, relevance, rating, title, or viewCount where supported.
How many results can I extract per channel?
Use maxResults to control how many items per category (videos, shorts, live streams, posts) you collect. The default is 10 and you can go up to 1000.
Does it handle blocks or rate limits?
Yes. It starts with no proxy and automatically falls back to Apify datacenter and then residential proxies if requests are blocked (e.g., 403/429), improving reliability for high-volume runs.
What formats can I export the data to?
Results are saved to the Apify Dataset, where you can export as JSON, CSV, or Excel β ideal for analytics, automation, and integration workflows.
Can I integrate this with my application or data pipeline?
Yes. Trigger runs and fetch dataset items via the Apify API. Since itβs built in Python using the Apify SDK, it also fits well into youtube channel scraper python and automation stacks.
Closing CTA / Final thoughts
The Youtube Channel Scraper is built for structured, reliable extraction of public YouTube channel data at scale. With independent sort controls, async pagination, and robust proxy fallback, it delivers clean datasets for marketers, developers, analysts, and researchers. Export to CSV/JSON/Excel, orchestrate via the Apify API, and integrate into your youtube channel scraping software or analytics pipeline. Start extracting smarter insights from channel About pages, videos, Shorts, live streams, and posts β fast and at scale.