YouTube Channel Shorts Scraper
Pricing
from $0.99 / 1,000 results
YouTube Channel Shorts Scraper
List Shorts videos from any YouTube channel. Title, view count, thumbnails, video ID.
Pricing
from $0.99 / 1,000 results
Rating
0.0
(0)
Developer
Farhan Febrian Nauval
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
YouTube Shorts Scraper
Enumerate the vertical Shorts feed of any YouTube channel — title, view-count text, video ID, direct Shorts URL, and thumbnails — in bulk, with one clean JSON record per Short.
Why use this actor
- Channel-level Shorts feed — pulls only the Shorts tab, not regular long-form videos, so you do not have to filter the output yourself.
- Flexible input — accepts handles (
@MrBeast), channel IDs (UCX6OQ3DkcsbYNE6H8uQQuVA), or full channel URLs in the same list. - Auto-pagination — walks the entire Shorts catalog for each channel (or stops at
maxItems) without you managing cursors. - Vertical thumbnails included — every Short comes with multiple 9:16 thumbnail resolutions ready for previews, dashboards, or multimodal training sets.
- View-count signal — surface the
viewCountTextYouTube shows on the Shorts shelf (e.g."106M views") for quick performance benchmarking. - Stable JSON output suitable for pipelines, spreadsheets, and databases — every row carries
_input,_channelId,_source, and_scrapedAtenvelope fields so you can join results back to your input list. - No account / no login / no API key — just paste the channel list and run.
How it works
- You provide a list of YouTube channels — handles, IDs, or full URLs all work.
- The actor resolves each handle to its channel ID, opens the channel's Shorts tab, and reads each Shorts item the same way the YouTube web app does.
- Pagination continues automatically until the channel's Shorts feed is exhausted or
maxItemsis reached. - Results stream into your dataset, ready to download as JSON, CSV, or Excel.
You do not need to manage scrapers, browsers, or rotating IPs — all handled internally.
Input
{"channels": ["@MrBeast","@khaby.lame"],"maxItems": 50,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["DATACENTER"]}}
| Field | Type | Description |
|---|---|---|
channels | array | List of YouTube channels to scrape. Accepts handles (@MrBeast), channel IDs (UCX6OQ3DkcsbYNE6H8uQQuVA), or full channel URLs. |
maxItems | integer | Maximum Shorts to return per channel. Default 50. Set 0 for unlimited. |
proxyConfiguration | object | Apify Proxy settings. Datacenter works for most channels; switch to residential for very large jobs. |
Output
Input: @MrBeast, maxItems: 3
{"videoId": "dqpCvSU-ECE","url": "https://www.youtube.com/shorts/dqpCvSU-ECE","title": "If This Goes In You Have To Subscribe","viewCountText": "2.8M views","thumbnails": [{"url": "https://i.ytimg.com/vi/dqpCvSU-ECE/oardefault.jpg?sqp=-oaymwEdCJUDENAFSFWQAgHyq4qpAwwIARUAAIhCcAHAAQY=&rs=AOn4CLAQV3EwU-zVRfZjyXYsuw8bub2ZrQ&usqp=CCk","width": 405,"height": 720},{"url": "https://i.ytimg.com/vi/dqpCvSU-ECE/oardefault.jpg?sqp=-oaymwEgCJUDEOAESFWQAgHyq4qpAw8IARUAAIhCcAHAAQbIAQE=&rs=AOn4CLCEfSlsJpHS4bVo4xt_JVYtX0xOrg&usqp=CCk","width": 405,"height": 608}],"_input": "@MrBeast","_channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA","_source": "S1-primary","_scrapedAt": "2026-05-18T10:44:44.812131+00:00"}
| Field | Type | Description |
|---|---|---|
videoId | string | YouTube's 11-character video ID. Combine with https://www.youtube.com/shorts/{videoId} or pass to the YouTube Video Detail actor for full metadata. |
url | string | Canonical Shorts player URL — ready to paste into a browser or feed to a downstream scraper. |
title | string | Title of the Short as shown on the channel's Shorts shelf. |
viewCountText | string | View count as YouTube renders it (e.g. "2.8M views", "106M views"). Text, not numeric — parse if you need an integer. |
thumbnails | array | Vertical (9:16) thumbnail variants. Each entry has url, width, height. Pick the largest for previews, the smallest for grids. |
_input | string | The channel exactly as you supplied it. Use this to join results back to your input list. |
_channelId | string | Resolved canonical channel ID (UC...). Stable across handle changes. |
_source | string | Internal tag for the path used to fetch the record. S1-primary means the fastest path; values starting with S2- would indicate a fallback. |
_scrapedAt | string | ISO-8601 UTC timestamp when the record was scraped. |
Error envelope
Channels that fail to resolve or fetch return a structured error instead of crashing the run:
{"_input": "@this-handle-does-not-exist-xyz","_error": "handle_resolve_failed","_errorDetail": "could not resolve @this-handle-does-not-exist-xyz","_source": "S1-primary","_scrapedAt": "2026-05-18T10:45:02.012345+00:00"}
Filter on _error to triage failed rows. Channels that simply have no Shorts return zero records — that is not an error.
Pricing
This actor is billed per result: $3.50 per 1,000 Shorts (Tier 3). Each Short returned in your dataset = 1 result. Error rows (handle_resolve_failed, fetch_failed, invalid_input) are not billed.
Other Sosmed Actors
| Platform | Actor | Best for |
|---|---|---|
| YouTube | YouTube Channel Scraper | Channel profile, subscriber count, regular video list |
| YouTube | YouTube Video Detail Scraper | Full metadata for any single Short or video by ID |
| Instagram Account Reels Scraper | Vertical reels feed for any Instagram account | |
| Threads | Threads Account Scraper | Account-level Threads feed for short-form posts |
| Twitch | Twitch Clips Scraper | Short clip catalog for any Twitch streamer |
| Pinterest Board Scraper | Pin feed for any Pinterest board | |
| Bluesky | Bluesky Account Posts Scraper | Account-level posts feed on atproto |
Browse the full catalog at apify.com/xtracto.
Notes
- The Shorts tab is ordered newest-first as YouTube serves it; ordering can shift between runs if the creator pins or unpins a Short.
- Only public Shorts are returned — unlisted and private Shorts are not visible on the channel's Shorts tab.
- Channels that have never posted a Short simply yield zero records (no error). The Shorts tab does not exist for such channels.
viewCountTextis text (e.g."1.2M views"), not a number — parse it client-side if you need an integer.- Thumbnails are vertical 9:16; the array contains multiple resolutions, sorted largest-first.
- Adult-oriented or age-restricted Shorts may be hidden by YouTube's default safety filter and will not appear.