apidojo-io/apidojo-skills

extracting-youtube-comments-for-research

Extracts and analyzes YouTube comments for audience research using apidojo's YouTube scraper on Apify.

Quelltext ansehen
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

Extracting YouTube Comments for Research

Pulls YouTube video comments for sentiment analysis, question mining, and product feedback. YouTube comments are more considered than TikTok — viewers invest more time before commenting.

Prerequisites

  • APIFY_TOKEN environment variable set
  • Optional: Apify MCP server installed

Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]YouTube URLs — channels, playlists, Shorts, search results
youtubeHandlesarrayOptional[]YouTube channel handles (e.g. @kurzgesagt)
getTrendingbooleanOptionalfalseRetrieve trending videos
keywordsarrayOptional[]Search keywords
glstringOptionalusCountry code for results (e.g. US, GB)
hlstringOptionalenLanguage code (e.g. en, de)
uploadDatestringOptionalallUpload date filter: any, hour, today, week, month, year
durationstringOptionalallDuration filter: any, short, long
featuresstringOptionalallFeature filter: 4k, hd, live, cc, 3d, hdr, etc.
sortstringOptionalrSort order for search results
maxItemsnumberOptionalUnlimitedMaximum videos to return
customMapFunctionstringOptional—JavaScript function to transform each output object

Workflow

Progress:
- [ ] Step 1: Scrape comments from target videos
- [ ] Step 2: Filter and clean dataset
- [ ] Step 3: Analyze by research goal
- [ ] Step 4: Extract top themes and insights
- [ ] Step 5: Deliver comment research report

Step 1: Scrape Comments

Recommended — run_actor.js (handles waiting, output, and file saving automatically):

bash
# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~youtube-comments-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~youtube-comments-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~youtube-comments-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json
APIFY_TOKEN must be set in environment or .env file.

If Apify MCP is available:

Tool: apify:run-actor
Actor: "apidojo~youtube-comments-scraper"
Input:
{
  "startUrls": [{"url": "[VIDEO_URL_1]"}, {"url": "[VIDEO_URL_2]"}],
  "type": "comments",
  "maxComments": 500
}

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-comments-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"startUrls": [{"url": "[VIDEO_URL]"}], "type": "comments", "maxComments": 500}'

Step 2: Clean Dataset

  • Remove comments < 8 words (usually emoji-only or "great video!")
  • Remove self-promotional comments (contain external links)
  • Remove creator's own replies (match authorName to channel name)
  • Apply min_likes_on_comment filter if set

Step 3: Analyze by Goal

Questions: Contains "?", "how do you", "what is", "can you" Pain points: "I struggle", "I can't", "problem is", "doesn't work" Product feedback: Product mentions + opinion signals Sentiment: Standard lexical classifier (positive/negative/neutral)

comment_importance = likeCount * 0.60 + replyCount * 10 * 0.40

Step 4: Edge Cases

  • Comments disabled: Note; try different video from same channel
  • Mostly non-English: Report language distribution; filter to English if needed
  • Spam invasion: Filter where same username appears > 3 times
  • Brigaded comment section: > 50% share coordinated theme → flag as BRIGADED

Output Format

# YouTube Comment Analysis
Videos: [N] | Comments analyzed: [N] | After filtering: [N] | Date: [DATE]

## Sentiment (if goal = sentiment)
Positive: [X%] | Negative: [X%] | Neutral: [X%]

## Top 10 Most-Liked Comments
| # | Comment (excerpt) | Likes | Replies |
|---|------------------|-------|---------|

## Key Themes
| Theme | Frequency | Avg Likes | Example |
|-------|-----------|-----------|---------|

## Most Asked Questions
1. "[question]" — [N] viewers

Troubleshooting

Few comments returned: YouTube limits access for some videos; try high-comment video from same channel. Mostly surface-level praise: Use min_likes_on_comment = 5 to filter for substantive comments. Research goal not present: Audience may not engage that way on YouTube; try Reddit or TikTok for this niche.

aus demselben Repository

Weitere Skills

Alle Skills
apidojo-io
Community

analyzing-competitor-instagram-content-strategy

Analyzes a competitor's Instagram content strategy and performance using apidojo's Instagram scraper on Apify. Triggers when the user asks to: analyze what a competitor posts on Instagram, benchmark a competitor's Instagram engagement, see what content types perform best for a competitor on Instagram, reverse-engineer a competitor's Instagram content calendar, identify content gaps vs. a competitor on Instagram, compare posting frequency or content themes, or understand why a competitor's Instag

Installationen
3
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

scraping-tiktok-user-data

Scrapes detailed TikTok user data and recent video history using apidojo's TikTok User scraper on Apify. Triggers when the user asks to: get all videos from a TikTok account, fetch a TikTok creator's recent posts and stats, export a TikTok user's video history, scrape all TikTok content from a specific creator, get TikTok post data by username, or collect video-level metrics from a TikTok profile. Returns per-video view count, likes, comments, shares, captions, and timestamps for a given account

Installationen
3
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

monitoring-trending-topics-twitter-by-niche

Monitors trending topics and conversations in a specific niche on Twitter using apidojo's Twitter Search scraper. Triggers when the user asks to: monitor trending topics in a niche on Twitter, track what's being discussed in an industry on X right now, find emerging conversations in a sector on Twitter, see what topics are trending in a specific community, track real-time buzz around a business topic on Twitter, or identify breaking trends before they hit mainstream media. Returns trending topic

Installationen
3
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

scraping-twitter-list-members

Scrapes all members and their profile data from any public Twitter/X list using apidojo's Twitter List scraper on Apify. Triggers when the user asks to: get all members of a Twitter list, export accounts in a Twitter list, scrape profiles from a curated Twitter list, fetch the usernames in a public Twitter list, download data from a Twitter list URL, or collect profile stats for everyone on a list. Returns username, bio, follower count, and profile metadata for each list member. Ideal for compet

Installationen
2
GitHub Stars
1
Aktualisiert
13. Mai