
💥 YouTube Comments Scraper pro 💫
Pricing
$1.50 / 1,000 results

💥 YouTube Comments Scraper pro 💫
[🔥Special🔥] Here $1.5 for 100 results .⚡ Get a super-fast, dependable scraper that extracts cid, type, publishedTimeText, comment, author, pageUrl — and much more — in seconds! ⏱️ Boost your workflow, save hours, and power up your data game today! 🚀✨
5.0 (1)
Pricing
$1.50 / 1,000 results
0
2
2
Last modified
21 hours ago
🎥 YouTube Comments Scraper
Quickly extract structured comment data from one or more YouTube videos — including comment text, author info, timestamps, votes, and raw fields.
Built to run as an Apify actor. This README shows a summary, inputs, outputs, examples, troubleshooting tips and proxy recommendations. 🔧
✨ Summary
This actor scrapes comments from YouTube video URLs and returns structured JSON objects per video, including:
- 💬 Comments (text, id, author, replies, likes/votes, timestamps)
- 👤 Author info (author name, author id, author url, avatar if available)
- 🧾 Video metadata (video id, video url, title, best-effort commentsCount)
- 📦 Raw payload — the original raw comment object is preserved for every comment so you don’t lose any fields.
Key points:
- Input: one or more YouTube video URLs (
startUrls
). - Optional:
maxComments
to limit how many comments per video are scraped. - Optional:
getAllComments
to ignoremaxComments
and fetch all available comments. - Optional:
sortBy
—top
(highest votes first) ornewest
(most recent first).
🚀 Highlights
- ⚡ Fast, structured output — one JSON object per video run.
- 🧩 Preserves full
raw
comment object for custom fields. - 🎯 Exact
maxComments
support (whengetAllComments
isfalse
) andgetAllComments
toggle. - 🌐 Proxy-aware (Apify Proxy recommended for stability) — use RESIDENTIAL for best results.
- 🔁 Supports sorting by
top
ornewest
.
🛠️ Example Input
{"startUrls": ["https://www.youtube.com/watch?v=wT4HcYAeV5U","https://www.youtube.com/watch?v=H6l0q4l2NLo"],"maxComments": 100,"sortBy": "top",}
📤 Output
For every video the actor writes results both to the Apify dataset and to container files:
output_<videoId>.json
— full JSON object for the video (includingcomments
array).comments_<videoId>.jsonl
— newline-delimited JSON with one comment per line (good for streaming).- Apify dataset entry for each video — downloadable from the Apify Console. ☁️
Example output (one video object)
{"videoUrl": "https://www.youtube.com/watch?v=wT4HcYAeV5U","videoId": "wT4HcYAeV5U","title": "YouTube","commentsCount": null,"comments": [{"cid": "Ugxl_IUyS2PaN9t-_wV4AaABAg","type": "comment","publishedTimeText": "7 hours ago","publishedTimeTs": 1759729079.617027,"comment": "Madhubanti + Rashmika = 🔥","author": "@maddockfilmsindia","authorId": null,"authorUrl": null,"authorThumbnail": null,"replyCount": 7,"voteCount": 5,"isHearted": false,"isEdited": false,"raw": {"cid": "Ugxl_IUyS2PaN9t-_wV4AaABAg","text": "Madhubanti + Rashmika = 🔥","time": "7 hours ago","author": "@maddockfilmsindia","channel": "UCGgi8DSEirlGCQ3B3bO5BsQ","votes": "5","replies": "7","photo": "https://yt3.ggpht.com/bhYAlBYCO9k-CfeGL42c3db-vBGi-3vLwQFgXWrQgHAstpaqE5LxHdIHDYdJ0RVje0-v5j7RLQ=s88-c-k-c0x00ffffff-no-rj","heart": false,"reply": false,"time_parsed": 1759729079.616943},"videoId": "H6l0q4l2NLo","pageUrl": "https://www.youtube.com/watch?v=H6l0q4l2NLo"},{"cid": "UgxR7iZmrx-cvVYyIZJ4AaABAg","type": "comment","publishedTimeText": "10 hours ago","publishedTimeTs": 1759718280.088529,"comment": "This song honestly has the soul of Aaj Ki Raat.\nFeels like Sachin–Jigar were asked to recreate that same vibe — and they pulled it off.\nJust try singing Aaj Ki Raat over this track and you’ll get exactly what I mean","author": "@saho_x","authorId": null,"authorUrl": null,"authorThumbnail": null,"replyCount": 1,"voteCount": 4,"isHearted": false,"isEdited": false,"raw": {"cid": "UgxR7iZmrx-cvVYyIZJ4AaABAg","text": "This song honestly has the soul of Aaj Ki Raat.\nFeels like Sachin–Jigar were asked to recreate that same vibe — and they pulled it off.\nJust try singing Aaj Ki Raat over this track and you’ll get exactly what I mean","time": "10 hours ago","author": "@saho_x","channel": "UCnVC00Vv0foM0EKkz6Y1iWQ","votes": "4","replies": "1","photo": "https://yt3.ggpht.com/TUTguFWKoy3k8SUTycBbxzhJ3T7B6enA0MGQqsE77VSCl8YeL4p8dK9iZu1QZ5gqGj_IWqN3=s88-c-k-c0x00ffffff-no-rj","heart": false,"reply": false,"time_parsed": 1759718280.088388},"videoId": "H6l0q4l2NLo","pageUrl": "https://www.youtube.com/watch?v=H6l0q4l2NLo"},{"cid": "UgyDoXT2Qt9yi8s_K0V4AaABAg","type": "comment","publishedTimeText": "16 hours ago","publishedTimeTs": 1759696680.562509,"comment": "Thama Massive Hit Hai 💯🔥","author": "@KAMALBOLTAHAI","authorId": null,"authorUrl": null,"authorThumbnail": null,"replyCount": 0,"voteCount": 2,"isHearted": false,"isEdited": false,"raw": {"cid": "UgyDoXT2Qt9yi8s_K0V4AaABAg","text": "Thama Massive Hit Hai 💯🔥","time": "16 hours ago","author": "@KAMALBOLTAHAI","channel": "UC7QK8aH2kx8kV3ZDb78gudg","votes": "2","replies": "","photo": "https://yt3.ggpht.com/-dSC3L4wVQlPFXaE1DQ0pa861J_1gJmKr0whQ_OBAVuC_du6rp3UNXtb9mIImMk2akwNfj1-=s88-c-k-c0x00ffffff-no-rj","heart": false,"reply": false,"time_parsed": 1759696680.562357},"videoId": "H6l0q4l2NLo","pageUrl": "https://www.youtube.com/watch?v=H6l0q4l2NLo"},{"cid": "UgxjmCCpexYiRfqxtOZ4AaABAg","type": "comment","publishedTimeText": "52 minutes ago","publishedTimeTs": 1759751159.068628,"comment": "🗿AAJ KI RAAT 2.0✅","author": "@SANJAY_GALAXY_369","authorId": null,"authorUrl": null,"authorThumbnail": null,"replyCount": 0,"voteCount": 1,"isHearted": false,"isEdited": false,"raw": {"cid": "UgxjmCCpexYiRfqxtOZ4AaABAg","text": "🗿AAJ KI RAAT 2.0✅","time": "52 minutes ago","author": "@SANJAY_GALAXY_369","channel": "UC1aOBn-22LWDKOXIEjWpaBQ","votes": "1","replies": "","photo": "https://yt3.ggpht.com/PgPHT8B88ib2qteQGAaQe_zQWPs5D4hQHM6xlyBijbL0paF_AUO6VPdj0eH49QCT5o_5JiVa=s88-c-k-c0x00ffffff-no-rj","heart": false,"reply": false,"time_parsed": 1759751159.068529},"videoId": "H6l0q4l2NLo","pageUrl": "https://www.youtube.com/watch?v=H6l0q4l2NLo"},{"cid": "UgxieB4nLFkp3lMGhY94AaABAg","type": "comment","publishedTimeText": "7 hours ago","publishedTimeTs": 1759729079.616322,"comment": "Aaj Ki Raat 2.0 ❤","author": "@maddockfilmsindia","authorId": null,"authorUrl": null,"authorThumbnail": null,"replyCount": 0,"voteCount": 1,"isHearted": false,"isEdited": false,"raw": {"cid": "UgxieB4nLFkp3lMGhY94AaABAg","text": "Aaj Ki Raat 2.0 ❤","time": "7 hours ago","author": "@maddockfilmsindia","channel": "UCGgi8DSEirlGCQ3B3bO5BsQ","votes": "1","replies": "","photo": "https://yt3.ggpht.com/bhYAlBYCO9k-CfeGL42c3db-vBGi-3vLwQFgXWrQgHAstpaqE5LxHdIHDYdJ0RVje0-v5j7RLQ=s88-c-k-c0x00ffffff-no-rj","heart": false,"reply": false,"time_parsed": 1759729079.616239},"videoId": "H6l0q4l2NLo","pageUrl": "https://www.youtube.com/watch?v=H6l0q4l2NLo"},]"scrapedCount": 1}
📑 Typical fields
Field | Description |
---|---|
videoUrl | Input video URL |
videoId | YouTube video ID |
title | Best-effort page title (if available) |
commentsCount | Best-effort comment count (may be null ) |
comments | Array of comment objects |
comments[].cid | Comment unique id |
comments[].comment | Comment text |
comments[].author | Author display name |
comments[].authorId | Author channel id (if available) |
comments[].authorUrl | Author channel URL (if available) |
comments[].authorThumbnail | Author avatar URL (if available) |
comments[].publishedTimeText | Human readable time (e.g. "2 days ago") |
comments[].publishedTimeTs | Parsed timestamp (when parseable) |
comments[].replyCount | Number of replies |
comments[].voteCount | Likes / votes count (if available) |
comments[].isHearted | Whether channel owner hearted the comment |
comments[].isEdited | Whether the commenter edited the comment |
comments[].raw | Full raw object returned by underlying parser |
🧩 Troubleshooting
Issue | Possible Cause | Fix / Tip |
---|---|---|
Empty dataset | Wrong video URL or comments disabled | Verify URLs and check video has comments; try another video. |
Fewer comments than expected | maxComments limit or generator yielded fewer | Set getAllComments=true or increase maxComments |
commentsCount is null | Not present in page HTML | Use comments[].raw to inspect raw payload for count |
Partial metadata | Fields hidden or loaded dynamically | Check raw field; consider retries with proxy |
Rate limiting / 429 errors | Too many requests without proxy | Use Apify Proxy RESIDENTIAL or reduce concurrency |