TripAdvisor Review Scraper: Hotel & Restaurant Monitor
Pricing
from $0.60 / 1,000 reviews
TripAdvisor Review Scraper: Hotel & Restaurant Monitor
Extract reviews, ratings, reviewer profiles and owner responses from any TripAdvisor hotel, restaurant or attraction page. Pay per review. Use as an MCP server in Claude & AI agents.
Pricing
from $0.60 / 1,000 reviews
Rating
0.0
(0)
Developer
The Mine Works
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
๐จ TripAdvisor Reviews Scraper: Hotels, Restaurants, Attractions
Overview
TripAdvisor Reviews Scraper extracts reviews at scale from any TripAdvisor hotel, restaurant, or attraction page: star ratings, full review text, reviewer profile, trip type, owner responses, photos, and hotel sub-ratings (cleanliness, service, value, location, sleep quality, rooms). Give it a list of listing URLs and it returns clean structured JSON, sorted the way you want.
TripAdvisor sits behind PerimeterX anti-bot protection. This actor drives PlaywrightCrawler with Apify's RESIDENTIAL proxies and retries automatically when a challenge or 403 is detected, rotating to a fresh proxy session on each attempt (up to five retries per page). You pay only for reviews actually pushed to the dataset.
โ Handles PerimeterX anti-bot | โ Hotels, restaurants, and attractions | โ Owner responses included | โ Pay only per review delivered | โ MCP-ready for AI agents
Features
Full review extraction: rating, headline, expanded body text, visit date, trip type, and helpful-vote count. Reviewer context: display name, home city and country, and total review contributions. Hotel sub-ratings (cleanliness, service, value, location, sleep quality, rooms) where TripAdvisor exposes them. Owner responses and response dates when a listing has management replies. Language filtering, four sort orders (newest, oldest, highest rated, lowest rated), and paginated pulls up to 2,000 reviews per listing.
How it works
The actor drives PlaywrightCrawler against each TripAdvisor listing URL you supply, applies your language filter as a query parameter, walks the paginated review list (10 reviews per page), and expands truncated bodies to full text. Reviews are yielded as flat records with all sub-fields normalized.
TripAdvisor uses PerimeterX aggressively; success depends on the quality of the residential IP drawn from the pool. On Apify's STARTER plan, RESIDENTIAL IPs may hit a 403 on retry for some target URLs. For the most reliable results, users on Apify Scale+ plans should switch proxyConfig to apifyProxyGroups: ["SHADER"], Apify's premium anti-detect proxy tier that handles PerimeterX at the protocol level.
๐งพ Input configuration
{"urls": ["https://www.tripadvisor.com/Hotel_Review-g60763-d112962-Reviews-The_Plaza-New_York_City_New_York.html"],"maxReviews": 200,"language": "en","sortBy": "date_desc","proxyConfig": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
๐ค Output format
{"reviewId": "9345712345","listingUrl": "https://www.tripadvisor.com/Hotel_Review-g60763-d112962-Reviews-The_Plaza-New_York_City_New_York.html","listingName": "The Plaza","listingType": "hotel","reviewerName": "TravellerAnna","reviewerLocation": "London, United Kingdom","reviewerContributions": 47,"rating": 5,"title": "A once-in-a-lifetime stay","text": "We booked the Plaza for our anniversary and the service was exceptional...","visitDate": "May 2026","visitType": "Couples","helpfulVotes": 12,"ownerResponse": "Dear Anna, thank you for choosing the Plaza for such a special occasion...","ownerResponseDate": "2026-06-02","subRatings": { "cleanliness": 5, "service": 5, "value": 4, "location": 5, "sleep_quality": 5, "rooms": 5 },"photos": [],"language": "en","charged": true,"scraped_at": "2026-07-10T12:00:00.000Z"}
Every review record contains these fields:
| Field | Description |
|---|---|
๐ reviewId | TripAdvisor review ID |
๐ listingUrl | Source listing URL |
๐ท๏ธ listingName | Hotel, restaurant, or attraction name |
๐จ listingType | hotel, restaurant, or attraction |
๐ค reviewerName | Reviewer display name |
๐ reviewerLocation | Reviewer home city and country |
โ๏ธ reviewerContributions | Total reviews written by this user |
โญ rating | Overall rating (1 to 5) |
๐ฐ title | Review headline |
๐ text | Full review body (expanded) |
๐
visitDate | Month and year of visit |
๐งณ visitType | Business, Couples, Family, Friends, or Solo |
๐ helpfulVotes | Number of Helpful votes |
๐ข ownerResponse | Management reply text (when present) |
๐ ownerResponseDate | Date of management reply |
๐ subRatings | Hotel sub-ratings (cleanliness, service, value, location, sleep_quality, rooms) |
๐ผ๏ธ photos[] | URLs of photos attached to the review |
๐ language | Review language code |
๐ฐ charged | True if this result was billable |
๐ scraped_at | ISO 8601 timestamp of capture |
๐ผ Common use cases
Hotel reputation management Pull your property's latest reviews daily and feed rating and sentiment into a dashboard. Track owner-response rates against competitor properties in the same market.
Restaurant competitive intelligence Compare ratings, visit types, and reviewer language across competing restaurants in a city. Identify which dishes or service aspects drive 5-star vs. 1-star reviews.
Travel content aggregation Build destination guides enriched with real traveller quotes, trip types, and sub-ratings. Filter to a specific language or visit type (e.g. family trips to theme parks).
Sentiment and NLP analysis
Feed text, rating, and visitType into a classifier to predict satisfaction drivers.
Owner responses are a ready-made training set for hospitality reply-generation models.
๐ Getting started
- Open the actor and paste one or more TripAdvisor listing URLs (hotel, restaurant, or attraction).
- Set Max reviews per listing (default 5, up to 2,000).
- Optionally set Language (ISO code, e.g.
en,fr) and Sort order (newest, oldest, highest rated, lowest rated). - Keep the default RESIDENTIAL proxy; upgrade to SHADER if you are on an Apify Scale+ plan and need higher reliability.
- Click Save & Start, then download as JSON, CSV, or Excel, or pull via API or MCP.
FAQ
Does this handle PerimeterX bot protection? Yes. The actor uses PlaywrightCrawler with residential proxies and retries automatically with a fresh session on each challenge (up to five retries per page). On Apify's STARTER plan, some target URLs may hit persistent 403s; upgrade to SHADER (Scale+ plans) for the most reliable results.
How do I filter reviews by language?
Set language to an ISO 639-1 code (en, fr, de, es). Leave blank to collect all languages. The filter is applied as a TripAdvisor URL query parameter before scraping.
Are sub-ratings available for restaurants and attractions?
No. Sub-ratings (cleanliness, service, value, location, sleep quality, rooms) are a hotel-specific feature. The subRatings field is absent from restaurant and attraction records.
Can I access owner responses?
Yes. The ownerResponse field contains the management reply text and ownerResponseDate contains when it was posted. Both are omitted when there is no reply.
How am I charged? Pay per review at $0.003 per review. There is no free tier. Charging happens after a review is successfully pushed to the dataset; you are never charged for failed or incomplete results.
Use in Claude, ChatGPT & any MCP agent
https://mcp.apify.com/?tools=themineworks/tripadvisor-reviews
Or call it programmatically with the Apify client:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('themineworks/tripadvisor-reviews').call({urls: ['https://www.tripadvisor.com/Hotel_Review-g60763-d112962-Reviews-The_Plaza-New_York_City_New_York.html'],maxReviews: 100,sortBy: 'date_desc',});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
๐ ๏ธ Complete your travel intelligence pipeline
Reviews are one signal. Add pricing, geo, and rival social signals:
- Trustpilot Business Search: brand reputation signals across service categories.
- Google Maps Leads Scraper: hospitality businesses with verified emails from Google Maps.
- Threads Scraper: public social conversation on any brand or property.
Typical flow: pull TripAdvisor sentiment for a shortlist of properties, cross-check on Trustpilot for service reputation, and monitor social chatter on Threads or X.
Found a bug or have a feature request? Open an issue on the actor's Apify Console page or reach out through the Apify profile.