mcpField
R
review-site-scraper

review-site-scraper

github.com/gooseworks-aiMarketing & growth1.3k45 installsUpdated 3d ago
Repository

About review-site-scraper

A command-line skill for scraping product reviews from G2, Capterra, and Trustpilot through Apify actors. It normalizes results and supports keyword and date filters, review limits, and JSON or summary output.

Key features

  1. 01Scrape reviews from three platforms
  2. 02Normalize platform-specific results
  3. 03Filter by keywords or date range
  4. 04Set a maximum review count
  5. 05Output JSON or summaries

Use cases

  1. 01Collect reviews for a product from G2
  2. 02Find recent reviews containing selected keywords
  3. 03Export normalized review data as JSON

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/gooseworks-ai/goose-skills --skill review-site-scraper

After installing, type/review-site-scraperin Claude Code to confirm it loaded.

Bundled filesscripts/scrape_reviews.pyskill.meta.json

Details

From the project README

Review Site Scraper

Scrape product reviews from G2, Capterra, and Trustpilot using platform-specific Apify actors.

Quick Start

Requires APIFY_API_TOKEN env var (or --token flag). No external dependencies needed (uses stdlib urllib).

# Trustpilot reviews
python3 skills/capabilities/review-site-scraper/scripts/scrape_reviews.py \
  --platform trustpilot \
  --url "https://www.trustpilot.com/review/example.com" \
  --max-reviews 10 --output summary

# G2 reviews with keyword filter
python3 skills/capabilities/review-site-scraper/scripts/scrape_reviews.py \
  --platform g2 \
  --url "https://www.g2.com/products/example/reviews" \
  --keywords "pricing,support"

# Capterra reviews (uses company name, not URL)
python3 skills/capabilities/review-site-scraper/scripts/scrape_reviews.py \
  --platform capterra \
  --company-name "HubSpot CRM" \
  --max-reviews 20

Supported Platforms

PlatformActorInputCost
G2focused_vanguard/g2-reviews-scraper--url (G2 product page URL)Free tier available
Capterragetdataforme/capterra-reviews-scraper-bulk--company-name (company name, not a URL)Pay-per-result
Trustpilotagents/trustpilot-reviews--url (Trustpilot review page URL)~$0.20/1k reviews

CLI Reference

FlagDefaultDescription
--platformrequiredg2, capterra, or trustpilot
--urlnoneProduct review page URL (required for G2 and Trustpilot)
--company-namenoneCompany name to search (Capterra only)
--max-reviews50Max reviews to scrape
--keywordsnoneKeywords to filter (comma-separated, OR logic)
--daysnoneOnly include reviews from last N days
--outputjsonOutput format: json or summary
--tokenenv varApify token (prefer APIFY_API_TOKEN env var)
--timeout300Max seconds for Apify run

Normalized Output Schema

All platforms are normalized but each has platform-specific fields.

G2 output fields:

{
  "platform": "g2",
  "id": "review-id",
  "product_name": "Product Name",
  "title": null,
  "text": "Review body text",
  "rating": 4,
  "author": "Reviewer Name",
  "author_title": "Job Title",
  "author_company": "Company Name",
  "author_company_size": "51-200",
  "author_industry": "Software",
  "date": "2026-02-18",
  "source": "organic",
  "url": "https://..."
}

Capterra output fields:

{
  "platform": "capterra",
  "title": "Review title",
  "text": "Review body text",
  "overall_rating": 4,
  "ease_of_use": 5,
  "customer_service": 3,
  "features": 4,
  "author": "Reviewer Name",
  "job_title": "Marketing Manager",
  "industry": "Marketing and Advertising",
  "usage_duration": "1-2 years",
  "date": "2026-02-18",
  "url": "https://..."
}

Trustpilot output fields:

{
  "platform": "trustpilot",
  "id": "review-id",
  "title": "Review title",
  "text": "Review body text",
  "rating": 4,
  "author": "Reviewer Name",
  "date": "2026-02-18T12:00:00.000Z",
  "experienced_date": "2026-02-15T00:00:00.000Z",
  "likes": 2,
  "input_source": "organic",
  "url": "https://..."
}

Comments

Markdown supported