Youtube Shorts Scraper
Pricing
$19.99/month + usage
Youtube Shorts Scraper
🎬 youtube-shorts-scraper extracts YouTube Shorts metadata at scale — titles, captions, hashtags, channel, publish date, views, likes, comments, duration & thumbnails. ⚙️ Clean JSON/CSV output. 📊 Ideal for trend tracking, competitor analysis, and content strategy. 🚀
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
Scrapium
Actor stats
0
Bookmarked
2
Total users
0
Monthly active users
19 days ago
Last modified
Categories
Share
Youtube Shorts Scraper
The Youtube Shorts Scraper is a fast, scalable YouTube Shorts extractor that collects clean, structured metadata from Shorts discovered by channel handles, full channel URLs, or keyword searches. It solves the pain of manual copy-paste by automating bulk collection of titles, views, likes, publish dates, durations, comments, hashtags, and channel info — a powerful YouTube Shorts API alternative for marketers, developers, analysts, and researchers. With clean JSON/CSV output, it enables large-scale trend tracking, competitor monitoring, and content strategy workflows. 🚀
What data / output can you get?
| Data type | Description | Example value |
|---|---|---|
| title | Shorts title extracted from the video page | “I Built A Chocolate Factory” |
| id | Unique YouTube video ID (11 chars) | “R7MkZL5i3FQ” |
| url | Canonical Shorts URL | “https://www.youtube.com/shorts/R7MkZL5i3FQ” |
| thumbnailUrl | Best available thumbnail URL (fallback to HQ) | “https://i.ytimg.com/vi/R7MkZL5i3FQ/hqdefault.jpg” |
| viewCount | Parsed view count (supports K/M/B) | 64493572 |
| date | Publish date in ISO format when available | “2025-11-07T00:00:00.000Z” |
| likes | Parsed like count when available | 909841 |
| duration | Duration in HH:MM:SS (Shorts-friendly) | “00:00:27” |
| commentsCount | Parsed comments count when available | 7171 |
| commentsTurnedOff | Whether comments are disabled | false |
| channelName | Channel display name | “MrBeast” |
| channelUrl | Canonical channel URL (handle or channel ID) | “https://www.youtube.com/@MrBeast” |
| numberOfSubscribers | Parsed subscriber count when available | 450000000 |
| hashtags | Hashtags extracted from title/description | ["giveaway","shorts"] |
| descriptionLinks | Links detected in title/description runs | ["https://example.com","https://www.youtube.com/watch?v=abc123def45"] |
| location | Video location when present in metadata | “Los Angeles, CA” |
| subtitles | Available caption tracks (base URL + language) | [{"url":"https://...%22,%22languageCode%22:%22en"}] |
| isMonetized | Monetization flag from microformat (if present) | true |
| aboutChannelInfo | Aggregated channel About metadata block | { ... } |
Notes:
- Each run saves items to the Apify dataset, ready to export as JSON or CSV.
- Bonus/extra fields include channel avatars/banners, channel totals (videos/views), and context flags (order, fromYTUrl, fromChannelListPage).
Key features
-
⚡️ Powerful Shorts discovery
- Accepts channel handles (e.g., @MrBeast), usernames (mrbeast), full channel URLs, or plain keywords. Automatically switches to keyword search if a channel tab is empty — perfect for a YouTube Shorts URL extractor and YouTube Shorts web crawler workflow.
-
🔎 Flexible filters & sorting
- Filter with publishedAfter (absolute date or relative like “7 days”, “2 weeks”, “1 month”, “1 year”) and sort by newest, oldest, or popularity (views) — ideal for YouTube Shorts analytics scraper needs.
-
📦 Rich, structured outputs
- Scrapes titles, views, likes, publish dates, durations, comments, hashtags, links, subtitles, formats, and detailed channel metadata. Clean JSON/CSV output for analysis or pipelines.
-
🧠 Smart channel enrichment
- Resolves channel browse IDs, fetches About tab details, and aggregates into aboutChannelInfo, including channelJoinedDate, channelLocation, total videos/views, and verification.
-
🧵 Batch scraping at scale
- Process multiple channels/keywords in one run, with parallel fetching and robust retries for reliable bulk YouTube Shorts scraper workflows.
-
🌐 Optional proxy support
- Integrate Apify Proxy when needed for reliability in restricted regions; otherwise uses direct connection by default.
-
🧑💻 Developer-friendly
- Built on the Apify SDK with async architecture (aiohttp). Easy to integrate into pipelines as a YouTube Shorts API alternative or with YouTube Shorts scraper Python backends.
-
🛡️ Production-ready reliability
- Resilient client-version handling, robust pagination/continuations, and defensive parsing for long-running jobs and large datasets.
How to use Youtube Shorts Scraper - step by step
- Sign in to your Apify account and open the “youtube-shorts-scraper” actor.
- In the Input tab, paste your sources into startUrls:
- Channel handles: “@ChannelName” or “ChannelName” (e.g., “mrbeast”)
- Full channel URLs: “https://www.youtube.com/@ChannelName”
- Keywords: any term (e.g., “funny shorts”, “cooking tips”)
- Set maxResults to control how many Shorts to collect per input (1–10,000; default 10).
- (Optional) Use publishedAfter to filter by date:
- Absolute date: “YYYY-MM-DD”
- Relative time: “7 days”, “2 weeks”, “1 month”, “1 year”
- Choose sortOrder: “newest”, “popular”, or “oldest”.
- (Optional) Configure proxyConfiguration to enable Apify Proxy if you’re in a restricted region.
- Click Start. The run will fetch Shorts via channel tabs or fall back to keyword search if needed.
- Monitor progress in the logs. Results are saved to the dataset automatically.
- Export your dataset to JSON or CSV for analytics, dashboards, or downstream tooling.
Pro Tip: Automate daily or weekly runs by scheduling actor executions and pipe the dataset to your BI stack — a scalable way to scrape YouTube Shorts without API friction.
Use cases
| Use case name | Description |
|---|---|
| Marketing trend tracking | Monitor top-performing Shorts by views to inform content calendars and creative testing. |
| Competitor channel analytics | Track Shorts output and engagement for competitor channels with a repeatable YouTube Shorts channel scraper. |
| Hashtag research | Discover hashtag patterns across niches with a precise YouTube Shorts hashtag scraper approach. |
| Audience insights | Analyze publish cadence, durations, and comment activity to optimize Shorts strategy. |
| Keyword-led discovery | Use keyword inputs to find relevant Shorts at scale — a robust YouTube Shorts extractor for content discovery. |
| Data enrichment pipelines | Feed structured Shorts data into warehouses for dashboards, clustering, and ML analysis. |
| Academic & media research | Collect longitudinal Shorts datasets for trend studies and media analysis using a YouTube Shorts analytics scraper. |
Why choose Youtube Shorts Scraper?
- 🎯 Precision-first extraction from public YouTube endpoints with robust data parsing.
- 🌍 Date filters and popularity sorting to focus on what matters now.
- 📈 Built for scale: batch inputs, parallel fetching, and resilient retries.
- 🧑💻 Developer-ready: an effective YouTube Shorts API alternative you can integrate into Python/SDK pipelines.
- 🔌 Optional proxy support for reliability in restricted geos.
- 💾 Clean JSON/CSV dataset exports for analysis, automation, and reporting.
- 🛡️ No login required — works on publicly available data only, avoiding fragile browser extensions or unstable scripts.
In short: a reliable, automation-ready YouTube Shorts scraper tool that outperforms manual workflows and ad‑hoc scripts.
Is it legal / ethical to use Youtube Shorts Scraper?
Yes — when done responsibly. This actor collects publicly available data from YouTube. It does not access private or authenticated content.
Guidelines for compliant use:
- Scrape only public Shorts and channel information.
- Respect YouTube’s Terms of Service and your local laws (e.g., GDPR/CCPA).
- Avoid storing personal data unless you have a legitimate basis for processing.
- Use proxies and automation responsibly.
- Consult your legal team for jurisdiction-specific requirements.
Input parameters & output format
Example JSON input
{"startUrls": ["rainbowicecream9780", "@MrBeast", "https://www.youtube.com/@YouTube", "funny shorts"],"maxResults": 10,"publishedAfter": "7 days","sortOrder": "newest","proxyConfiguration": {"useApifyProxy": false}}
Input fields
- startUrls (array)
- Description: Where to scrape Shorts from. Add channel handles (e.g., @MrBeast), usernames (e.g., mrbeast), full channel URLs (e.g., https://www.youtube.com/@MrBeast), or search keywords (e.g., funny shorts).
- Default: ["rainbowicecream9780"]
- Required: Yes
- maxResults (integer)
- Description: Maximum number of Shorts to scrape per channel or keyword. Ranges from 1 to 10,000. Higher = more data, longer run.
- Default: 10
- Required: No
- publishedAfter (string)
- Description: Filter by publish date. Use a date (YYYY-MM-DD) or relative time (e.g., 7 days, 2 weeks, 1 month, 1 year). Leave empty to include all Shorts.
- Default: None
- Required: No
- sortOrder (string; enum: newest, popular, oldest)
- Description: Order of results: Newest first, Oldest first, or by Popularity (views).
- Default: newest
- Required: No
- proxyConfiguration (object)
- Description: Turn on Apify Proxy for more reliable scraping (useful in EU or restricted regions). Off = direct connection; works in most regions and for Apify QA.
- Default: {"useApifyProxy": false}
- Required: No
Example JSON output
{"title": "Giving Trick-or-Treaters Weirder and Weirder Gifts","translatedTitle": null,"type": "shorts","id": "R7MkZL5i3FQ","url": "https://www.youtube.com/shorts/R7MkZL5i3FQ","thumbnailUrl": "https://i.ytimg.com/vi/R7MkZL5i3FQ/hqdefault.jpg","viewCount": 64493572,"date": "2025-11-07T00:00:00.000Z","likes": 909841,"location": null,"channelName": "MrBeast","channelUrl": "https://www.youtube.com/@MrBeast","channelUsername": null,"collaborators": null,"channelId": null,"channelDescription": null,"channelJoinedDate": null,"channelDescriptionLinks": [],"channelLocation": null,"channelAvatarUrl": null,"channelBannerUrl": null,"channelTotalVideos": null,"channelTotalViews": null,"numberOfSubscribers": 450000000,"isChannelVerified": false,"inputChannelUrl": null,"isAgeRestricted": false,"aboutChannelInfo": {"channelDescription": null,"channelJoinedDate": null,"channelDescriptionLinks": [],"channelLocation": null,"channelUsername": null,"channelAvatarUrl": null,"channelBannerUrl": null,"channelTotalVideos": null,"channelTotalViews": null,"numberOfSubscribers": 450000000,"isChannelVerified": false,"channelName": "MrBeast","channelUrl": "https://www.youtube.com/@MrBeast","channelId": null,"inputChannelUrl": null,"isAgeRestricted": false},"duration": "00:00:27","commentsCount": 7171,"text": "Giving Trick-or-Treaters Weirder and Weirder Gifts","translatedText": null,"descriptionLinks": ["https://example.com"],"subtitles": [{"url": "https://www.youtube.com/api/timedtext?v=R7MkZL5i3FQ&lang=en","languageCode": "en","name": "English"}],"order": 1,"commentsTurnedOff": false,"fromYTUrl": "https://www.youtube.com/results?search_query=funny%20shorts","isMonetized": true,"hashtags": ["giveaway","shorts"],"formats": [{"quality": "720p","url": "https://r2---sn-... (truncated)"}],"isMembersOnly": false,"input": "funny shorts","fromChannelListPage": "search","isPaidContent": false}
Notes:
- Some fields may be null or empty if not present on the source (e.g., subtitles, location, channel avatars/banners).
- order reflects the per-input ranking. fromYTUrl indicates whether the item came from a channel Shorts tab or a keyword search page.
FAQ
Does this work as a YouTube Shorts API alternative?
Yes. The actor collects public Shorts metadata without using the official API, making it a practical YouTube Shorts API alternative for analytics, enrichment, and research.
Can I scrape by channel and by keyword?
Yes. Provide channel handles, usernames, or full URLs to scrape a channel’s Shorts tab. If a channel tab is empty or you enter a plain keyword, the actor switches to a keyword-led Shorts search.
Is this a YouTube Shorts comments scraper?
The actor extracts commentsCount and detects commentsTurnedOff when available. It does not fetch full comment threads — it focuses on high-level metadata for scale and reliability.
Is it a YouTube Shorts video downloader?
No. It returns metadata including available formats and captions when present, but it’s not a downloader. Use formats and subtitles fields for analysis, not media downloading.
How many results can I collect in one run?
Use maxResults to set a per-input limit from 1 to 10,000 (default 10). You can pass multiple inputs in startUrls for bulk YouTube Shorts scraper runs.
Does it support proxies and restricted regions?
Yes. Set proxyConfiguration to use Apify Proxy for better reliability in restricted regions. By default, it uses a direct connection that works in most areas.
Can I use it with Python and automation tools?
Yes. It’s built on the Apify SDK and produces dataset outputs you can consume in Python, making it easy to integrate as a YouTube Shorts scraper Python component or in larger pipelines.
What file formats can I export?
You can export datasets as JSON or CSV directly from Apify. This makes it simple to feed results into your BI tools, workflows, or databases.
Closing CTA / Final thoughts
The Youtube Shorts Scraper is built for structured, scalable extraction of YouTube Shorts metadata. It streamlines discovery via channels or keywords, enriches items with channel details, and outputs clean JSON/CSV for your analytics and automation workflows.
Whether you’re a marketer tracking trends, a developer building a pipeline, or a researcher studying Shorts performance, you’ll get reliable data at scale — without the friction of official APIs. Connect it to your YouTube Shorts data mining stack, trigger runs on schedule, and start extracting smarter insights today.