Tripadvisor UK Reviews Scraper — Geo Reviews API
Pricing
from $1.50 / 1,000 reviews
Tripadvisor UK Reviews Scraper — Geo Reviews API
Scrape attraction, restaurant, and hotel reviews from tripadvisor.co.uk via GraphQL. UK/.co.uk geo SEO niche. HTTP + curl_cffi only — no Playwright. Clean schema export for research, pricing and lead workflows.
Pricing
from $1.50 / 1,000 reviews
Rating
0.0
(0)
Developer
Noah Adler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Share
Tripadvisor UK Reviews Scraper
Tripadvisor.co.uk reviews scraper for UK attractions, hotels, and restaurants — rating, title, text, author, language, and publish date in one Dataset row per review.
Built for UK/.co.uk geo SEO, reputation monitoring, and travel-product research. No HTML scraping (DataDome 403) and no Playwright — reviews come from Tripadvisor’s GraphQL ids endpoint via curl_cffi.
Primary path:
POST https://www.tripadvisor.co.uk/data/graphql/idswithpreRegisteredQueryId+locationIdfrom the URL (-dNNNNN-). Residential proxy recommended.
Why this Actor: tripadvisor.co.uk niche · GraphQL not HTML · Hotels / attractions / restaurants · Paginated reviews · HTTP-only Chrome fingerprint
Table of contents
- What this Actor does
- What you get
- Features
- Input
- Output example
- Output fields
- Quick start (API)
- Use cases
- Limitations
- FAQ
- Keywords
What this Actor does
| Step | Action |
|---|---|
| 1 | Parse locationId from each tripadvisor.co.uk entity URL (-d(\\d+)-) |
| 2 | Call GraphQL ReviewsProxy_getReviewListPageForLocation (pre-registered query) |
| 3 | Paginate offset / limit until maxReviews |
| 4 | Push one Dataset row per review |
Input: entity URLs + max reviews.
Output: review rows with location metadata.
What you get
Location
locationId,locationName,locationUrl
Each review
reviewId,rating,title,textlanguage,publishedAt,authorNamescrapedAt,error,errorMessage
Features
| Capability | Detail |
|---|---|
| UK .co.uk niche | Targets tripadvisor.co.uk entity pages |
| GraphQL path | Skips HTML / DataDome page blocks |
| Entity types | Attraction, hotel, restaurant URLs with -d{id}- |
| Pagination | Up to maxReviews (default 50, max 500) |
| No browser | HTTP + curl_cffi Chrome impersonation |
| Query override | Optional graphqlQueryId if Tripadvisor rotates the registered query |
| Proxy-aware | Defaults to Apify RESIDENTIAL |
Input
| Field | Required | Description |
|---|---|---|
startUrls | Yes | tripadvisor.co.uk entity URLs (requestListSources) |
maxReviews | No | Cap per URL (default 50, max 500) |
graphqlQueryId | No | Override preRegisteredQueryId (default ef1a9f94012220d3 — may need refresh) |
proxyConfiguration | No | Prefer RESIDENTIAL |
Example
{"startUrls": [{"url": "https://www.tripadvisor.co.uk/Attraction_Review-g186338-d187555-Reviews-The_British_Museum-London_England.html"}],"maxReviews": 50,"graphqlQueryId": "ef1a9f94012220d3","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output example
{"locationId": "187555","locationName": "The British Museum","locationUrl": "https://www.tripadvisor.co.uk/Attraction_Review-g186338-d187555-Reviews-The_British_Museum-London_England.html","reviewId": "987654321","rating": 5,"title": "World-class collection","text": "Spent a full day exploring…","language": "en","publishedAt": "2025-11-02","authorName": "Traveller123","scrapedAt": "2026-03-20T12:00:00Z","error": false,"errorMessage": null}
Output fields
| Field | Notes |
|---|---|
locationId | From URL -dNNNNN- |
locationName | From GraphQL location.name or URL slug hint |
locationUrl | Canonical entity URL |
reviewId, rating, title, text | Review body |
language, publishedAt, authorName | Meta |
scrapedAt | ISO UTC |
error, errorMessage | Per-URL failure rows |
Quick start (API)
curl "https://api.apify.com/v2/acts/YOUR_USERNAME~tripadvisor-uk-reviews/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"startUrls": [{"url":"https://www.tripadvisor.co.uk/Attraction_Review-g186338-d187555-Reviews-The_British_Museum-London_England.html"}],"maxReviews": 20}'
Use cases
- UK SEO / geo content — review signals for London and UK destinations on
.co.uk - Reputation & sentiment — hotel / attraction / restaurant monitoring
- Product research — competitor listing review volume and ratings
- AI / NLP pipelines — training or scoring on public guest text
Limitations
- HTML listing pages are not scraped (DataDome); GraphQL only
preRegisteredQueryIdmay rotate — usegraphqlQueryIdto override- Deep history capped at
maxReviews(500) - Private / removed reviews are not available
- Strong WAF may still require residential proxy
FAQ
Why GraphQL instead of HTML?
Tripadvisor.co.uk entity HTML is commonly blocked by DataDome (403). The probed GraphQL ids endpoint returns the review list when called with the right headers and TAUnique / X-Requested-By token.
Which URLs work?
Any tripadvisor.co.uk (or redirected) Attraction / Hotel / Restaurant review URL whose path contains -d{locationId}-.
Do I need a proxy?
Residential is recommended. Datacenter IPs are often blocked.
What is graphqlQueryId?
Tripadvisor’s extensions.preRegisteredQueryId. Default ef1a9f94012220d3 was working at probe time; if responses break, refresh it from a browser network capture and pass the new value.
Keywords
tripadvisor uk, tripadvisor.co.uk scraper, tripadvisor reviews api, uk attraction reviews, london hotel reviews scraper, tripadvisor restaurant reviews uk, travel review dataset, tripadvisor graphql, geo seo tripadvisor, uk tourism reviews, hotel reputation scraper, attraction sentiment uk