The reliable way to collect product reviews in 2026 is a permission-first pipeline: identify the exact platform and fields you need, use a documented access method when one exists, respect the platform’s current rules and technical controls, record your sampling decisions, and treat the result as a sample for analysis—not a guaranteed census of customers.
Scraping a page does not make the data lawful, complete, authentic, or representative. Before writing a collector, read the target site’s terms, privacy notices, and developer documentation, and obtain legal advice for your jurisdiction and use case when necessary.
What product-review scraping actually produces
Review collection means retrieving structured facts such as a product identifier, review identifier, rating, title, body, date, displayed author label, verified-buyer label, helpful-vote count, seller or variant, and the URL and timestamp of collection. The output can support descriptive questions:
- Which complaints recur in the reviews you collected?
- How do ratings or themes differ between two products during the same period?
- Which features do reviewers praise or criticize?
Those are claims about the collected set. They become claims about a marketplace, brand, or entire customer population only if your sampling design supports that generalization. A page that is easy to fetch may omit older reviews, regional variants, removed posts, replies, images, or reviews shown only after interaction.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Amazon describes reviews as useful for judging product fit and understanding sentiment, liked features, and opportunities to improve. That is a description of intended value, not evidence that an extracted sample represents every customer.
Check access rules before collecting anything
Read the platform’s current terms and documentation
The Federal Trade Commission advises marketers to know the rules of the websites and platforms where reviews appear. Start with the exact site, country or region, account type, and access method you plan to use. Look for a documented API, export, partner feed, or written permission. The reviewed sources do not establish a universally available, approved review API, so do not assume one exists.
Keep a record of the terms version or page date, the account or authorization used, your requested fields, and any stated retention or redistribution limits. If the platform’s rules are unclear, pause collection rather than treating silence as permission.
FTC guidance is available in Soliciting and Paying for Online Reviews: A Guide for Marketers.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitchesDo not confuse robots.txt with authorization
Amazon’s AmazonProductDiscoverybot documentation describes Amazon’s own crawler for publicly available product details on seller, brand, and retailer websites. Amazon says, “AmazonProductDiscoverybot respects robots.txt, honoring the user-agent and the disallow directives.” It also says robots.txt changes can take up to 24 hours to update in its systems and that this crawler does not support crawl-delay, nofollow, or noindex.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Those statements apply to that named crawler and its documented purpose. They do not authorize a third-party scraper, and they do not describe permission to extract Amazon customer-review pages. A robots.txt check is a technical courtesy, not a substitute for terms, consent, an API agreement, or legal analysis.
Separate collection from publication
Saving data for internal analysis and republishing review text are different activities. If you display a reviewer’s material connection—such as payment or a free product—the FTC says the connection should be clearly and conspicuously disclosed. Obtain advice about copyright, privacy, database rights, contractual restrictions, and cross-border rules before redistributing text or personal data; the sources here do not resolve those questions for a particular implementation.
Design a dataset that can be audited
Define the question and collection window before choosing selectors. Store raw responses only when your agreement and retention policy allow it, and keep a normalized table for analysis.
Free tools Windows power users keep installed
One-click scans. No signup required.
| Field | Why keep it |
|---|---|
| Source URL and platform | Proves where the record came from and prevents mixing sites. |
| Product ID, parent ID, seller, and variant | Stops color, size, or regional listings from being merged accidentally. |
| Review ID, rating, title, body, date | Supports deduplication, trend analysis, and reproducible filters. |
| Displayed author and verification labels | Preserves what the platform showed without treating a label as proof of truth. |
| Helpful votes, replies, media indicators | Lets you distinguish engagement from sentiment. |
| Collected-at timestamp, locale, and parser version | Makes later reruns and changes in page structure explainable. |
Choose a sampling rule
Write down whether you collect the newest N pages, a date range, every review visible through an approved feed, or a fixed sample per product and region. Record pagination limits, missing fields, language filters, deleted records, and deduplication keys. Report the number requested, received, rejected, and retained.
Use descriptive language such as “in the 4,812 records collected from these URLs between March 1 and March 7.” Do not write “customers think” unless your design justifies that broader statement.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Compare collection approaches honestly
| Approach | Access and rules | Coverage and freshness | Main risks |
|---|---|---|---|
| Documented API or partner feed | Use only the permissions and fields documented by the provider; availability for reviews is not established by the sources here. | Usually structured and repeatable, but limited to exposed fields and quotas. | Contractual limits, omitted reviews, version changes. |
| Platform export or owner-provided file | Requires the account owner’s authorization. | Can be complete for that account and period. | Stale exports, inconsistent schemas, personal data. |
| Browser or HTML retrieval | Allowed only where the site’s current rules and authorization permit it; robots.txt alone is insufficient. | May capture rendered fields, but pagination, localization, login walls, and dynamic loading create gaps. | Rate controls, bot checks, changing markup, accidental over-collection. |
| Search snippets or third-party datasets | Check the provider’s license and provenance. | Often partial, delayed, or transformed. | Unknown sampling, stale text, duplicated records. |
A conservative Python collector for an authorized page
The following standard-library example fetches one URL only after you have confirmed that this method is permitted. It checks the site’s robots.txt as a courtesy, identifies JSON-LD blocks, and extracts Product.review objects when the page publishes them. It does not bypass a login, CAPTCHA, paywall, rate limit, or access control. JSON-LD is optional, so an empty result is a normal outcome.
#!/usr/bin/env python3
import argparse, json, sys
from urllib.parse import urlparse
from urllib.request import Request, urlopen
from urllib import robotparser
UA = "ReviewResearchBot/1.0 (+contact@example.org)"
def allowed(url):
p = urlparse(url)
robots = f"{p.scheme}://{p.netloc}/robots.txt"
rp = robotparser.RobotFileParser(robots)
try:
rp.read()
return rp.can_fetch(UA, url)
except Exception:
return False
def walk(value):
if isinstance(value, dict):
if "review" in value:
reviews = value["review"]
if isinstance(reviews, dict): reviews = [reviews]
if isinstance(reviews, list):
for item in reviews:
if isinstance(item, dict): yield item
for child in value.values():
yield from walk(child)
elif isinstance(value, list):
for child in value: yield from walk(child)
def main():
ap = argparse.ArgumentParser()
ap.add_argument("url")
ap.add_argument("--out", default="reviews.jsonl")
args = ap.parse_args()
if not allowed(args.url):
raise SystemExit("robots.txt disallows this user agent or could not be read; stop and verify permission.")
req = Request(args.url, headers={"User-Agent": UA, "Accept": "text/html"})
with urlopen(req, timeout=30) as response:
html = response.read().decode(response.headers.get_content_charset() or "utf-8", "replace")
marker = ''
records = []
pos = 0
while True:
start = html.find(marker, pos)
if start < 0: break
start += len(marker)
stop = html.find(end, start)
if stop < 0: break
try:
data = json.loads(html[start:stop].strip())
records.extend(walk(data))
except json.JSONDecodeError:
pass
pos = stop + len(end)
with open(args.out, "w", encoding="utf-8") as f:
for review in records:
f.write(json.dumps(review, ensure_ascii=False) + "n")
print(f"wrote {len(records)} review objects to {args.out}")
if __name__ == "__main__": main()
Run it as python review_jsonld.py https://authorized.example/product --out reviews.jsonl. Replace the example URL and user agent contact with your own details. Inspect the output against the page, retain the source URL and timestamp, and add a platform-specific parser only when your authorization permits it.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchcURL for a permitted HTML download
curl --fail --location --max-time 30
-A 'ReviewResearchBot/1.0 (+contact@example.org)'
-H 'Accept: text/html'
'https://authorized.example/product' -o product.html
A successful HTTP response is not proof that collection is allowed or that reviews are complete. Stop on a block, challenge, or unexpected redirect instead of trying to evade it.
Node.js equivalent for a single authorized fetch
const url = process.argv[2];
if (!url) throw new Error('usage: node fetch-review-page.mjs URL');
const res = await fetch(url, {
headers: {
'user-agent': 'ReviewResearchBot/1.0 (+contact@example.org)',
'accept': 'text/html'
},
signal: AbortSignal.timeout(30000)
});
if (!res.ok) throw new Error(`${res.status} ${res.statusText}`);
const html = await res.text();
await import('node:fs/promises').then(fs => fs.writeFile('product.html', html));
console.log(`saved ${html.length} bytes`);
Validate authenticity without overstating it
Neither open systems, which accept reviews broadly, nor closed systems, which limit reviews to verified buyers or users, are immune to fake reviews. FTC staff says open systems may face greater challenges determining legitimacy, but a “verified” label is not a guarantee that every statement is true. Amazon describes its own anti-abuse tools and expert investigators; its pages say only the original author can edit a posted review and that Amazon can suppress reviews that fail its integrity standards. Treat those as Amazon’s descriptions of its processes.
Amazon reports that it blocked hundreds of millions of suspected fake reviews from its store in 2025. That is an Amazon-reported figure, not an independently verified count or a general fake-review rate across commerce.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Signals to investigate
- Sudden bursts of reviews, repeated phrases, identical ratings, or improbable timing.
- Large shifts after a product, seller, or variant change.
- Conflicts between the displayed rating, review text, and verification label.
- Near-duplicate records caused by pagination or syndicated listings.
These are prompts for review, not proof of manipulation. Triangulate with different sources, check recency, and preserve the original context. The FTC consumer alert recommends looking at varied sources, noting whether a source is independent or sponsored, checking how recent reviews are, and examining unusual bursts as possible indicators.
Moderation, disclosure, and responsible reuse
FTC staff recommends transparent review practices and processes for investigating reports that a review may be fake. If you publish an analysis, explain the source, dates, filters, language or region restrictions, deduplication, and whether material connections were disclosed. Do not silently remove unfavorable records while presenting the result as the whole review population.
The FTC’s platform guidance covers disclosure and handling practices. Its Consumer Reviews and Testimonials Rule Q&A states that the rule took effect October 21, 2024 and addresses deceptive and unfair conduct involving reviews and testimonials. The Q&A is guidance, not a definitive or comprehensive safe harbor, and it does not decide whether a particular scraping implementation is permitted.
The FTC also points to the Consumer Review Fairness Act, which protects the ability to share honest opinions. That protection does not by itself settle platform access or collection rights.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Performance, reliability, and cost controls
- Minimize requests: collect only needed fields, cache permitted responses, and avoid repeatedly fetching unchanged pages.
- Throttle conservatively: follow documented limits and stop when the platform signals overload or automation controls.
- Make jobs resumable: checkpoint product IDs and review IDs so a failure does not restart the entire run.
- Log outcomes: record status, redirect, parser version, response time, and whether a record was skipped.
- Protect data: restrict access to raw text, redact unnecessary personal information, and set a deletion schedule.
- Test parser drift: keep fixture pages that you are authorized to retain and alert when expected fields disappear.
Common failures and fixes
| Symptom | Likely cause | Responsible fix |
|---|---|---|
| 403, 429, or a CAPTCHA | The platform is denying or rate-limiting automated access. | Stop, review the rules, use an approved channel, or request permission. Do not rotate identities to evade controls. |
| HTML contains no reviews | Reviews load client-side, require a session, or are not published in JSON-LD. | Check documented APIs or exports; if browser capture is permitted, document the exact rendered state. |
| Only the first page is saved | Pagination or “load more” is dynamic. | Use the platform’s documented pagination method and record the stopping condition. |
| Duplicate reviews | Variant pages, syndicated content, or repeated requests. | Deduplicate with a stable review ID where available; otherwise use a cautious composite key and keep the original URLs. |
| Parser suddenly returns zero | Markup or schema changed. | Compare a retained fixture, alert on field-count changes, and update the parser only after rechecking permission. |
| Ratings do not match the page | Locale, variant, moderation, or collection-time differences. | Store locale, variant, timestamp, and displayed aggregate separately from individual records. |
Or skip the browser setup
When your authorized workflow needs a visual record of a product page or review section, ScreenshotNeo is a website screenshot API and MCP server. It is not a text-review API, so use it to capture rendered evidence, not to claim that an image is a complete dataset. It can accept consent banners before capture and remove more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the result with X-Page-Verdict and X-Billed headers.
Recommended Free Tools
One request returns PNG, JPEG, WebP, or PDF. Relevant controls include full-page capture with lazy images loaded, a CSS-element selector, dark mode, device presets or any viewport, retina scale, waits for a selector, delay, or network idle, custom CSS and JavaScript, click-before-capture, hidden selectors, request and resource blocking, headers, cookies, user agent, authorization, timezone, geolocation, transparent backgrounds, resizing, chosen cache TTL, signed links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, a usage API, and an OpenAPI specification. An MCP server exposes take_screenshot, get_page_info, and capture_pdf to Claude, Cursor, and other MCP clients.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for parameters and response headers. The same request in Python:
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
And Node.js:
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
The Free plan includes 1,000 shots per month with no card. Paid plans are Starter $5 for 3,000, Growth $15 for 15,000, Pro $39 for 60,000, Scale $99 for 250,000, and Business $249 for 1,000,000; yearly billing gives two months free, and every feature is on every plan. Sign up for the free 1,000-shot plan.
Frequently Asked Questions
Does robots.txt give me permission to scrape reviews?
No. It is a crawler instruction. Check the platform’s terms, documentation, authorization, and applicable law; Amazon’s robots statement applies to its named AmazonProductDiscoverybot.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Are verified-buyer reviews automatically true?
No. Verification describes a platform signal, not a guarantee. Open and closed systems can both contain fake or misleading reviews.
Can I call my collected reviews representative?
Only when your sampling design supports that claim. Otherwise describe the exact source, dates, filters, and omissions and limit conclusions to the collected set.
What should I do when a site returns a CAPTCHA?
Stop the automated request, review the site’s rules, and use an approved access method or seek permission. Do not try to evade the control.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →

