Reviews
consumeraffairs.com
Verified
ConsumerAffairs Scraper
Extract consumer reviews, brand ratings, and complaint data from ConsumerAffairs. Built on spider-browser .
- target
- consumeraffairs.com
- success rate
- 99.9%
- latency
- ~4ms
POST
/fetch/consumeraffairs.com/ return_format
curl -X POST https://api.spider.cloud/fetch/consumeraffairs.com/ \ -H "Authorization: Bearer $SPIDER_API_KEY" \ -H "Content-Type: application/json" \ -d '{"return_format": "json"}'
200 OK · cache hit · response shape
{
"url": "https://consumeraffairs.com/",
"status": 200,
"data": {
"brand_name": "string",
"rating": "string",
"review_count": "string",
"review_text": "string",
"reviewer": "string",
"date": "string",
"category": "string",
"response": "string"
}
} # ConsumerAffairs Scraper
**Brand name**: string
**Rating**: string
**Review count**: string
**Review text**: string
**Reviewer**: string
**Date**: string
**Category**: string
**Response**: string
Quick start
Extract data in minutes.
Structured JSON from consumeraffairs.com with a single POST. AI-resolved selectors, cached on the first call.
consumeraffairs-scraper.ts
import { SpiderBrowser } from "spider-browser";
const spider = new SpiderBrowser({
apiKey: process.env.SPIDER_API_KEY!,
});
await spider.connect();
const page = spider.page!;
await page.goto("https://www.consumeraffairs.com/online/amazon.html");
await page.content();
const data = await page.evaluate(`(() => {
const reviews = [];
document.querySelectorAll("[data-testid='review-card']").forEach(el => {
const title = el.querySelector("[data-testid='review-title']")?.textContent?.trim();
const text = el.querySelector("[data-testid='review-text']")?.textContent?.trim();
const rating = el.querySelector("[data-testid='star-rating']")?.getAttribute("aria-label");
const author = el.querySelector("[data-testid='review-author']")?.textContent?.trim();
if (title) reviews.push({ title, text: text?.slice(0, 300), rating, author });
});
return JSON.stringify({ total: reviews.length, reviews: reviews.slice(0, 10) });
})()`);
console.log(JSON.parse(data));
await spider.close(); curl -X POST https://api.spider.cloud/fetch/consumeraffairs.com/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"return_format": "json"}' import requests
resp = requests.post(
"https://api.spider.cloud/fetch/consumeraffairs.com/",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
json={"return_format": "json"},
)
print(resp.json()) const resp = await fetch("https://api.spider.cloud/fetch/consumeraffairs.com/", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({ return_format: "json" }),
});
const data = await resp.json();
console.log(data); ready to run · spider-browser · TypeScript
Extraction
Fields you can pull.
Brand nameRatingReview countReview textReviewerDateCategoryResponse
Listings
Business intelligence
Extract ratings, reviews, and contact info from consumeraffairs.com listings.
Pagination
Review collection
Navigate through paginated reviews with scroll-based lazy loading.
Geo
Location targeting
Access location-specific results with geo-targeted residential proxies.
Related
More Reviews scrapers.
Start
Start scraping consumeraffairs.com.
Grab an API key and call the endpoint above. The first request resolves the config; every request after hits cache.