Skip to content
Back to skills

Review Summarizer

ASecurity

Scrape, analyze, and summarize product reviews from multiple platforms (Amazon, Google, Yelp, TripAdvisor). Extract key insights, sentiment analysis, pros/cons, and recommendations. Use when researching products for arbitrage, creating affiliate content, or making purchasing decisions.

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 30, 2026
datapythongobashapidocumentation

Works with

  • api

Security analysis

A100/100

Pro scans all 8 files and shows the line behind each finding

Scanned May 30, 2026

npx -y skills add Demerzels-lab/elsamultiskillagent --skill review-summarizer --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Review Summarizer?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Review Summarizer
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/demerzels-lab-review-summarizer/badge)](https://www.skillsdirectory.com/skills/demerzels-lab-review-summarizer)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: review-summarizer
description: Scrape, analyze, and summarize product reviews from multiple platforms (Amazon, Google, Yelp, TripAdvisor). Extract key insights, sentiment analysis, pros/cons, and recommendations. Use when researching products for arbitrage, creating affiliate content, or making purchasing decisions.
---

# Review Summarizer

## Overview

Automatically scrape and analyze product reviews from multiple platforms to extract actionable insights. Generate comprehensive summaries with sentiment analysis, pros/cons identification, and data-driven recommendations.

## Core Capabilities

### 1. Multi-Platform Review Scraping

**Supported Platforms:**
- Amazon (product reviews)
- Google (Google Maps, Google Shopping)
- Yelp (business and product reviews)
- TripAdvisor (hotels, restaurants, attractions)
- Custom platforms (via URL pattern matching)

**Scrape Options:**
- All reviews or specific time ranges
- Verified purchases only
- Filter by rating (1-5 stars)
- Include images and media
- Max review count limits

### 2. Sentiment Analysis

**Analyzes:**
- Overall sentiment score (-1.0 to +1.0)
- Sentiment distribution (positive/neutral/negative)
- Key sentiment drivers (what causes positive/negative reviews)
- Trend analysis (sentiment over time)
- Aspect-based sentiment (battery life, quality, shipping, etc.)

### 3. Insight Extraction

**Automatically identifies:**
- Top pros mentioned in reviews
- Common complaints and cons
- Frequently asked questions
- Use cases and applications
- Competitive comparisons mentioned
- Feature-specific feedback

### 4. Summary Generation

**Output formats:**
- Executive summary (150-200 words)
- Detailed breakdown by category
- Pros/cons lists with frequency counts
- Statistical summary (avg rating, review count, etc.)
- CSV export for analysis
- Markdown report for documentation

### 5. Recommendation Engine

**Generates recommendations based on:**
- Overall sentiment score
- Review quantity and recency
- Verified purchase ratio
- Aspect-based ratings
- Competitive comparison

## Quick Start

### Summarize Amazon Product Reviews

```python
# Use scripts/scrape_reviews.py
python3 scripts/scrape_reviews.py \
  --url "https://amazon.com/product/dp/B0XXXXX" \
  --platform amazon \
  --max-reviews 100 \
  --output amazon_summary.md
```

### Compare Reviews Across Platforms

```python
# Use scripts/compare_reviews.py
python3 scripts/compare_reviews.py \
  --product "Sony WH-1000XM5" \
  --platforms amazon,google,yelp \
  --output comparison_report.md
```

### Generate Quick Summary

```python
# Use scripts/quick_summary.py
python3 scripts/quick_summary.py \
  --url "https://amazon.com/product/dp/B0XXXXX" \
  --brief \
  --output summary.txt
```

## Scripts

### `scrape_reviews.py`
Scrape and analyze reviews from a single URL.

**Parameters:**
- `--url`: Product or business review URL (required)
- `--platform`: Platform (amazon, google, yelp, tripadvisor) (auto-detected if omitted)
- `--max-reviews`: Maximum reviews to fetch (default: 100)
- `--verified-only`: Filter to verified purchases only
- `--min-rating`: Minimum rating to include (1-5)
- `--time-range`: Time filter (7d, 30d, 90d, all) (default: all)
- `--output`: Output file (default: summary.md)
- `--format`: Output format (markdown, json, csv)

**Example:**
```bash
python3 scripts/scrape_reviews.py \
  --url "https://amazon.com/dp/B0XXXXX" \
  --platform amazon \
  --max-reviews 200 \
  --verified-only \
  --format markdown \
  --output product_summary.md
```

### `compare_reviews.py`
Compare reviews for a product across multiple platforms.

**Parameters:**
- `--product`: Product name or keyword (required)
- `--platforms`: Comma-separated platforms (default: all)
- `--max-reviews`: Max reviews per platform (default: 50)
- `--output`: Output file
- `--format`: Output format (markdown, json)

**Example:**
```bash
python3 scripts/compare_reviews.py \
  --product "AirPods Pro 2" \
  --platforms amazon,google,yelp \
  --max-reviews 75 \
  --output comparison.md
```

### `sentiment_analysis.py`
Analyze sentiment of review text.

**Parameters:**
- `--input`: Input file or text (required)
- `--type`: Input type (file, text, url)
- `--aspects`: Analyze specific aspects (comma-separated)
- `--output`: Output file

**Example:**
```bash
python3 scripts/sentiment_analysis.py \
  --input reviews.txt \
  --type file \
  --aspects battery,sound,quality \
  --output sentiment_report.md
```

### `quick_summary.py`
Generate a brief executive summary.

**Parameters:**
- `--url`: Review URL (required)
- `--brief`: Brief summary only (no detailed breakdown)
- `--words`: Summary word count (default: 150)
- `--output`: Output file

**Example:**
```bash
python3 scripts/quick_summary.py \
  --url "https://yelp.com/biz/example-business" \
  --brief \
  --words 100 \
  --output summary.txt
```

### `export_data.py`
Export review data for further analysis.

**Parameters:**
- `--input`: Summary file or JSON data (required)
- `--format`: Export format (csv, json, excel)
- `--output`: Output file

**Example:**
```bash
python3 scripts/export_data.py \
  --input product_summary.json \
  --format csv \
  --output reviews_data.csv
```

## Output Format

### Markdown Summary Structure

```markdown
# Product Review Summary: [Product Name]

## Overview
- **Platform:** Amazon
- **Reviews Analyzed:** 247
- **Average Rating:** 4.3/5.0
- **Overall Sentiment:** +0.72 (Positive)

## Key Insights

### Top Pros
1. Excellent sound quality (89 reviews)
2. Great battery life (76 reviews)
3. Comfortable fit (65 reviews)

### Top Cons
1. Expensive (34 reviews)
2. Connection issues (22 reviews)
3. Limited color options (18 reviews)

## Sentiment Analysis
- **Positive:** 78% (193 reviews)
- **Neutral:** 15% (37 reviews)
- **Negative:** 7% (17 reviews)

## Recommendation
✅ **Recommended** - Strong positive sentiment with high customer satisfaction.
```

## Best Practices

### For Arbitrage Research
1. **Compare across platforms** - Check Amazon vs eBay seller ratings
2. **Look for red flags** - High return rates, quality complaints
3. **Check authenticity** - Verified purchases only
4. **Analyze trends** - Recent review sentiment vs older reviews

### For Affiliate Content
1. **Extract real quotes** - Use actual customer feedback
2. **Identify use cases** - How people use the product
3. **Find pain points** - Problems the product solves
4. **Build credibility** - Use data from many reviews

### For Purchasing Decisions
1. **Check recent reviews** - Last 30-90 days
2. **Look at 1-star reviews** - Understand worst-case scenarios
3. **Consider your needs** - Match features to your use case
4. **Compare alternatives** - Use compare_reviews.py

## Integration Opportunities

### With Price Tracker
Use review summaries to validate arbitrage opportunities:
```bash
# 1. Find arbitrage opportunity
price-tracker/scripts/compare_prices.py --keyword "Sony WH-1000XM5"

# 2. Validate with reviews
review-summarizer/scripts/scrape_reviews.py --url [amazon_url]
review-summarizer/scripts/scrape_reviews.py --url [ebay_url]

# 3. Make informed decision
```

### With Content Recycler
Generate content from review insights:
```bash
# 1. Summarize reviews
review-summarizer/scripts/scrape_reviews.py --url [amazon_url]

# 2. Use insights in article
seo-article-gen --keyword "[product name] review" --use-insights review_summary.json

# 3. Recycle across platforms
content-recycler/scripts/recycle_content.py --input article.md
```

## Automation

### Weekly Review Monitoring

```bash
# Monitor competitor products
0 9 * * 1 /path/to/review-summarizer/scripts/compare_reviews.py \
  --product "competitor-product" \
  --platforms amazon,google \
  --output /path/to/competitor_analysis.md
```

### Alert on Negative Trends

```bash
# Check for sentiment drops below threshold
if [ $(grep -o "Sentiment: -" summary.md | wc -l) -gt 0 ]; then
  echo "Negative sentiment alert" | mail -s "Review Alert" user@example.com
fi
```

## Data Privacy & Ethics

- Only scrape publicly available reviews
- Respect robots.txt and rate limits
- Don't store PII (personal information)
- Aggregate data, don't expose individual reviewers
- Follow platform terms of service

## Limitations

- Rate limiting on some platforms
- Cannot access verified purchase status on all platforms
- Fake reviews may skew analysis
- Language support varies by platform
- Some platforms block scraping

---

**Make data-driven decisions. Automate research. Scale intelligence.**

Files in this skill

  • SKILL.md8.3 KB
  • _meta.json313 B
  • scripts/__init__.py28 B
  • scripts/compare_reviews.py4.8 KB
  • scripts/export_data.py2.4 KB
  • scripts/quick_summary.py1.8 KB
  • scripts/scrape_reviews.py9.6 KB
  • scripts/sentiment_analysis.py3.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.