YouTube Comments Scraper
Collect public YouTube comments with commenter, engagement, video, and channel context from one or more video URLs.
Aperçu
Turn public YouTube conversations into a structured dataset without manually opening each video and copying comments one by one. For every available top-level comment, the result keeps the comment text together with its public author handle, engagement signals, and the video and channel context needed to interpret it.
This combination is useful when a research, marketing, support, or content team needs more than an isolated quote. It lets analysts connect what viewers said with the video they reacted to, distinguish creator participation from audience participation, and retain visible engagement snapshots for later comparison.
Data notes
The data comes from publicly accessible YouTube video pages and their visible comment sections. Each record represents one top-level comment. Comment ID identifies the comment, while Video ID and Video URL identify the video that received it. Reply Count reports the number of replies shown for that comment, but reply messages are not separate records in this dataset.
Comment Time preserves YouTube's displayed text and may be relative, such as “10 years ago,” rather than a normalized timestamp. Comment Like Count, Video Like Count, Video View Count, Video Comment Count, and Channel Subscribers are text snapshots observed at collection time and can change later. Channel-owner Comment, Creator Heart, and Comments Disabled are also supplied as source text rather than converted booleans. Private, removed, restricted, or comment-disabled videos may not provide comment records.
What the results look like
Each record represents one public top-level YouTube comment and its video context.
| Comment ID | Comment text | Comment time | Comment like count | Video title | Channel name |
|---|---|---|---|---|---|
| UgiH2bCFcyVmAHgCoAEC | Want to try it out :) | 10 years ago | 1 | What is web scraping - Octoparse, your first web scraper! | Octoparse |
| UgxExampleComment002 | This walkthrough answered my setup question. | 2 years ago | 3 | What is web scraping - Octoparse, your first web scraper! | Octoparse |
Other available fields include Commenter Handle, Commenter Avatar URL, Reply Count, Creator Heart, Video ID, Video URL, Video Description, Video View Count, Video Like Count, Video Comment Count, Video Thumbnail URL, Channel Handle, Channel URL, Channel Avatar URL, and Channel Subscribers.
Use cases
- For audience feedback analysis, group Comment Text by Video Title to identify recurring questions, objections, praise, and requests around each video.
- For engagement review, compare Comment Like Count and Reply Count to find comments that generated the strongest visible reaction from other viewers.
- For creator-community analysis, use Channel-owner Comment and Creator Heart to distinguish direct creator participation from ordinary audience discussion.
- For channel research, combine Channel Name, Channel Subscribers, Video View Count, and Video Like Count to retain the public context surrounding each collected comment.
Périmètre et limites
Each run accepts 1 to 10,000 public YouTube video URLs; an optional limit can request 20 to 5,000 comments per video, while unavailable, private, restricted, or comment-disabled videos may return no comment records.
- Adapté pour
- Use it when you need public comment text and engagement details for one or more YouTube videos.
- Use it to study audience questions, reactions, recurring topics, or creator interaction around public videos.
- À ne pas utiliser pour
- Do not use it for private, removed, age-restricted, region-restricted, or otherwise inaccessible videos.
- Do not use it when you need reply-thread records rather than top-level comment records.
Gestion des échecs
Comportement en cas d'échec et de nouvelle tentative déclaré par le développeur. Nous vous recommandons de l'inclure dans votre prompt système lors de l'intégration.
- 1If a run fails, retry the same small URL set once; if it fails again, split a large batch into smaller groups.
- 2If no records are returned, confirm that the video is public, still available, and has comments enabled before retrying.
Entrée
Paramètres requis pour appeler cette App, générés à partir de l'input.schema du manifest.json.
- YouTube video URLs
video_urlsRequisarray<string>Public YouTube video page URLs whose comments you want to collect. Provide between 1 and 10,000 URLs per run.Nombrejusqu'à 10000 élémentsExemple["https://www.youtube.com/watch?v=xBBAD407zzU"] - Comments per video
comment_limitFacultatifintegerMaximum number of comments to request for each video, from 20 to 5,000. When omitted, the collector decides the limit; set it explicitly when predictable depth is important.Plage20–5000
Sortie
Structure des champs d'un enregistrement, générée à partir de l'output.schema du manifest.json.
- Channel avatar URL
account_avatar_urlstringImage address for the channel avatar observed with the video.Exemplehttps://yt3.ggpht.com/F2Tcm5xLoN764EY8s9e35Pn3FA--I-hVTIySlAJ8EQKp6--Je1KHMUbfVBGYJfrj45hgMM7mBnY=s48-c-k-c0x00ffffff-no-rj - Channel subscribers
account_fans_countstringSubscriber-count text displayed for the video channel at collection time.Exemple12.5K - Channel URL
account_home_urlstringYouTube channel page address associated with the video.Exemplehttps://www.youtube.com/@Octoparsewebscraping - Channel handle
account_idstringChannel identifier or handle associated with the video.Exemple@Octoparsewebscraping
Exemple de données
Généré à partir d'output.schema. Les champs sans valeur d'exemple utilisent des espaces réservés structurels.
{
"account_avatar_url": "https://yt3.ggpht.com/F2Tcm5xLoN764EY8s9e35Pn3FA--I-hVTIySlAJ8EQKp6--Je1KHMUbfVBGYJfrj45hgMM7mBnY=s48-c-k-c0x00ffffff-no-rj",
"account_fans_count": "12.5K",
"account_home_url": "https://www.youtube.com/@Octoparsewebscraping",
"account_id": "@Octoparsewebscraping",
"account_name": "Octoparse",
"author_is_channel_owner": "false",
"comment_count": "22",
"comment_id": "UgiH2bCFcyVmAHgCoAEC",
"comment_text": "Want to try it out :)",
"comment_time": "10 years ago",
"comment_type": "comment",
"comment_user_avatar_url": "https://yt3.ggpht.com/ytc/AIdro_kgZ5qNQYtjliDe_8XSTjzgtZ-pVBvmRF57LzBS9U7xgg=s88-c-k-c0x00ffffff-no-rj",
"comment_user_id": "@nanachoi9361",
"comments_turned_off": "false",
"content_id": "xBBAD407zzU",
"content_text": "Subscribe and Visit Us https://www.octoparse.com\n✨What is a web crawler?\n✨How does a web crawler work?\n✨What are the differences between it and a web scraper?",
"content_title": "What is web scraping - Octoparse, your first web scraper!",
"content_url": "https://www.youtube.com/watch?v=xBBAD407zzU",
"content_like_count": "44",
"cover_image_url": "https://i.ytimg.com/vi/xBBAD407zzU/hqdefault.jpg",
"has_creator_heart": "false",
"keyword": "https://www.youtube.com/watch?v=xBBAD407zzU",
"like_count": "1",
"play_count": "103538",
"reply_count": "0"
}Intégration
Cette App peut être intégrée via MCP, API, SDK ou export de fichiers — tous les canaux partagent les mêmes capacités et la même tarification. Chaque requête s'authentifie avec l'en-tête Authorization: Bearer à l'aide d'une API Key (longue durée, créée dans la console Data Hub) ; les clients MCP peuvent aussi se connecter via OAuth, sans clé. D'autres options comme la CLI et Skill arrivent bientôt. Cette App s'exécute de manière asynchrone et peut être annulée en cours de route : Après l'annulation, l'exécution s'arrête. Les enregistrements déjà livrés sont conservés et facturés.
Avec MCP (Model Context Protocol), vous pouvez appeler cette App directement depuis des clients IA comme Claude et Cursor. Choisissez votre client et votre mode d'authentification, puis copiez la config ci-dessous.
Config du client
Remplacez la valeur après Bearer par votre API Key longue durée. Fonctionne dans n'importe quel client, en CI ou en environnement sans navigateur.
{
"mcpServers": {
"octoparse_datahub": {
"type": "http",
"url": "https://mcp-v2.octoparse.com?pin=YiJacobJohnRaku/youtube-comments-scraper",
"headers": { "Authorization": "Bearer <YOUR_API_KEY>" }
}
}
}Laissez l'IA tout configurer pour vous
Vous ne voulez pas modifier les configs à la main ? Copiez le prompt d'installation et collez-le dans n'importe quel client IA — il effectuera la configuration à sa manière. (Le prompt demande à l'IA de vous réclamer votre API Key, afin que les identifiants ne finissent jamais dans l'historique de conversation ni dans des configs partagées.)
detail.access.mcp.composeHint
Tarifs
Facturé selon le nombre d'enregistrements renvoyés avec succès. Les exécutions échouées ne sont pas facturées.
Plusieurs événements de facturation se cumulent indépendamment. Voir chaque élément pour les détails. Les exécutions échouées ne sont pas facturées.
Voir les créditsEssayer maintenant
Renseignez les paramètres et lancez l'exécution — les résultats proviennent d'un appel réel.