
TikTok Shop Scraper
scrape.ly/store/shelfbright/tiktok-shop-scraperE-commerceSocial media
1 monthly user

Scrape GetYourGuide tours, activities and attraction tickets by destination, category, search term or URL. Get prices, ratings, reviews, duration, languages, cancellation policy, meeting point, highlights, photos and provider.
Scrape tours, activities and attraction tickets from GetYourGuide: prices, ratings, review counts, duration, languages, cancellation policy, meeting point with coordinates, highlights, inclusions, itinerary, photos, provider and the newest reviews. Paste a destination, category or search URL, or just type a search term, and get clean rows in seconds. No login, no browser, one consistent currency.
https://www.getyourguide.com/paris-l16/) and/or type search terms like Rome colosseum.| Field | What it does |
|---|---|
startUrls | Destination (…-l16/), attraction, category (…-tc1/), search (/s/?q=…) or activity (…-t193940/) URLs |
searchQueries | Free-text searches, like the GetYourGuide search box |
maxItems | Max activities across all inputs (0 = no limit) |
dateFrom / dateTo | Only activities available in this date range |
sortBy | popularity, price_asc, price_desc, rating_desc |
minPrice / maxPrice / minRating / minReviews | Filters on the listing |
includeDetails | Open each activity page for the full details (default on) |
includeReviews / maxReviewsPerItem | Add the newest reviews (default on, 10 per activity) |
currency / language | Price currency (default USD) and text language (default en) |
{
"startUrls": [{ "url": "https://www.getyourguide.com/paris-l16/" }],
"searchQueries": ["Rome colosseum"],
"maxItems": 20,
"sortBy": "rating_desc",
"currency": "EUR",
"includeReviews": true,
"maxReviewsPerItem": 10
}
One row per activity. Main fields:
| Field | Description |
|---|---|
activityId, url, title, description | Identity and short description |
price, originalPrice, discountPercent, currency, priceType | Starting price, price before discount, per person / per group |
rating, reviewCount, ratingsByCategory | Average rating, number of reviews, rating per category |
durationText, category, badges | Duration, activity type, badges like Bestseller or Skip the line |
location, latitude, longitude, provider | Location, meeting point coordinates, activity provider |
freeCancellation, cancellationPolicy, languages, audioGuideLanguages | Booking conditions and languages |
highlights, fullDescription, includes, excludes, itinerary | Page content |
meetingPoint, whatToBring, notAllowed, knowBeforeYouGo | Practical information |
images, reviews | Photo gallery and newest reviews |
Example (trimmed; review author is fictional):
{
"platform": "getyourguide",
"activityId": 193940,
"url": "https://www.getyourguide.com/paris-l16/paris-1-hour-seine-cruise-departing-from-the-eiffel-tower-t193940/",
"title": "Paris: Seine Cruise departing from the Eiffel Tower",
"price": 20.08,
"currency": "USD",
"rating": 4.42,
"reviewCount": 91774,
"ratingsByCategory": { "guide": 4.16, "transportation": 4.48, "valueForMoney": 4.35 },
"durationText": "1 hour",
"location": "Paris",
"latitude": 48.860385,
"longitude": 2.293565,
"provider": "BATEAUX PARISIENS - S.E.V.P.T.E",
"freeCancellation": true,
"cancellationPolicy": "Free cancellation – Cancel up to 24 hours in advance for a full refund",
"wheelchairAccessible": true,
"audioGuideLanguages": ["English", "French", "German", "Spanish", "Italian"],
"highlights": ["Embark at the foot of the Eiffel Tower for a Seine cruise aboard a modern boat"],
"includes": ["1-hour river cruise departing from the Eiffel Tower"],
"excludes": ["Drinks and snacks", "Souvenir photos"],
"itinerary": ["Bateaux Parisiens - tour Eiffel", "Les Invalides", "Musée d'Orsay", "Louvre Museum"],
"meetingPoint": "Board at Port de la Bourdonnais (at the foot of the Eiffel Tower) at pontoon no. 3.",
"images": ["https://cdn.getyourguide.com/image/format=jpg,fit=crop,width=1200/tour_img/cf879ee295abc8e4.jpeg"],
"reviews": [
{
"id": 100000001,
"author": "Jamie",
"country": "United States",
"rating": 5,
"reviewTitle": null,
"text": "Relaxing way to see the sights. Sit on the side away from the tower for the best views.",
"date": "2026-10-14T12:35:30+02:00",
"language": "en",
"travelerType": "Friend group",
"photos": []
}
],
"scrapedAt": "2026-10-14T23:16:57Z"
}
You pay $1.00 per 1,000 activities ($0.001 per activity), with full details and up to the reviews you ask for included in that price. Platform usage (compute and datacenter proxy traffic) is billed on top and is small: a 1,000-activity run with details and reviews used about $0.06 in our tests (about 3 minutes at 512 MB and 0.05 GB of datacenter traffic), so 1,000 activities ≈ $1.06 in total.
Is it legal to scrape GetYourGuide? The actor only collects publicly visible activity information. Check GetYourGuide's terms and your local laws, and handle reviewer names responsibly (personal data rules such as GDPR may apply).
Do I need a GetYourGuide account or my own proxy? No. No login is needed and the built-in datacenter proxy works well.
How many activities can I get? A destination list typically returns several hundred activities (Paris lists about 780). Add more destinations, categories or search terms to go further. The run stops cleanly when a list ends.
Why is a field empty? Not every activity has every section (for example no itinerary, no live guide or no meeting point). Activities opened directly from a URL have no listing-only fields such as badges or availability messages.
Can I schedule it or use the API? Yes. Schedule runs in the console or start them through the API and fetch the dataset as JSON, CSV or Excel.
Which currency and language do I get? The ones you set in the input (default USD and English), for every row.
price is the starting price GetYourGuide shows.maxReviewsPerItem per activity and at most 1,000, because they are stored inside the activity row, which must stay under the platform's 10 MB item size.Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
startUrlsarrayOptionalGetYourGuide URLs
Destination pages (e.g. https://www.getyourguide.com/paris-l16/), attraction pages, category pages (…-tc1/), search pages (/s/?q=…) or single activity pages (…-t193940/). Lists are paged through until the limit is reached.
searchQueriesarrayOptionalSearch terms
Free-text searches, the same as typing into the GetYourGuide search box (e.g. "Rome colosseum", "Bali snorkeling").
maxItemsintegerOptionaldefault 20Max activities
Maximum number of activities to save across all inputs. 0 means no limit (every activity the lists return).
dateFromstringOptionalAvailable from
Only activities available on or after this date (YYYY-MM-DD). Applies to destination and search lists.
dateTostringOptionalAvailable until
End of the date range (YYYY-MM-DD). Defaults to the start date.
sortByenumOptionalSort by
Order of destination and search results.
minPricenumberOptionalMin price
Only activities with a starting price at or above this amount (in the selected currency).
maxPricenumberOptionalMax price
Only activities with a starting price at or below this amount (in the selected currency).
minRatingnumberOptionalMin rating
Only activities rated at least this many stars (0–5).
minReviewsintegerOptionalMin reviews
Only activities with at least this many reviews.
includeDetailsbooleanOptionaldefault trueInclude full details
Open every activity page for the full description, highlights, includes/excludes, itinerary, meeting point with coordinates, languages, cancellation policy, provider and the whole photo gallery. Turn off for fast listing-only results.
includeReviewsbooleanOptionaldefault trueInclude reviews
Add the newest reviews (author, country, rating, text, date, traveler type, photos) and the rating per category to each activity.
maxReviewsPerItemintegerOptionaldefault 10Max reviews per activity
How many reviews to add to each activity when reviews are on. At most 1,000, because the reviews are stored inside the activity row and one row must stay under the platform's 10 MB item size.
currencystringOptionaldefault "USD"Currency
Currency for all prices, as a 3-letter code (USD, EUR, GBP, CHF, AUD, ...).
languagestringOptionaldefault "en"Language
Language of titles, descriptions and details, e.g. en, de, fr, es, it, pt-BR.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxies work well for GetYourGuide and are the cheapest option.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| activityId | integer | null | GetYourGuide activity ID |
| productId | string | null | Activity ID as text |
| platform | string | null | Always getyourguide |
| url | string | null | Activity page URL |
| title | string | null | Activity title |
| description | string | null | Short description |
| price | number | null | Starting price per person or group |
| originalPrice | number | null | Price before discount |
| discountPercent | number | null | Discount in percent |
| currency | string | null | Currency code |
| priceFormatted | string | null | Price as shown |
| priceType | string | null | per person / per group |
| rating | number | null | Average rating (0-5) |
| reviewCount | number | null | Number of reviews |
| ratingsByCategory | object | null | Average rating per category (guide, transportation, value for money, ...) |
| durationText | string | null | Duration as shown |
| category | string | null | Activity type, e.g. dayTrip, entryTicket, guidedTour |
| location | string | null | Location name |
| locationId | number | null | GetYourGuide location ID |
| countryId | number | null | GetYourGuide country location ID |
| latitude | number | null | Meeting point latitude |
| longitude | number | null | Meeting point longitude |
| provider | string | null | Activity provider (supplier) |
| badges | array | null | Badges such as Bestseller, Free cancellation, Skip the line |
| claimToFame | string | null | Highlight claim shown on the card |
| freeCancellation | boolean | null | Free cancellation available |
| cancellationPolicy | string | null | Cancellation policy text |
| reserveNowPayLater | boolean | null | Reserve now & pay later available |
| skipTheLine | boolean | null | Skip-the-line |
| bestseller | boolean | null | Bestseller badge |
| likelyToSellOut | boolean | null | Likely to sell out |
| wheelchairAccessible | boolean | null | Wheelchair accessible |
| liveGuide | boolean | null | Live tour guide |
| languages | array | null | Live guide languages |
| audioGuideLanguages | array | null | Audio guide languages |
| availabilityMessage | string | null | Availability note, e.g. 11 spots left tomorrow |
| nextAvailableAt | string | null | Next available start (ISO 8601) |
| highlights | array | null | Highlights |
| fullDescription | string | null | Full description |
| includes | array | null | What is included |
| excludes | array | null | What is not included |
| itinerary | array | null | Itinerary stops |
| meetingPoint | string | null | Meeting point description |
| meetingPointMapUrl | string | null | Google Maps link to the meeting point |
| whatToBring | array | null | What to bring |
| notAllowed | array | null | Not allowed |
| knowBeforeYouGo | array | null | Know before you go |
| keyDetails | array | null | All key-detail rows (key, title, description) |
| aiReviewSummary | string | null | Review summary shown on the page |
| images | array | null | Photo URLs |
| reviews | array | null | Newest reviews |
| searchQuery | string | null | Search term that found the activity |
| sourceUrl | string | null | Input URL that found the activity |
| position | number | null | Position in the list |
| scrapedAt | string | null | Scrape time (ISO 8601) |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Activity | One saved GetYourGuide activity with price, rating and (when enabled) full details and reviews. | $0.001 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('roamandroof/getyourguide-scraper').call({
"startUrls": [
{
"url": "https://www.getyourguide.com/paris-l16/"
}
],
"searchQueries": [
"Rome colosseum"
],
"maxItems": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run roamandroof/getyourguide-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=roamandroof/getyourguide-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Activities from a city page with details and reviews.
Search activities by keyword with details and reviews.
Cheapest well-rated tours matching a keyword.
Activity results in German with prices in euros.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.