Tours & Activities Scraper - Civitatis, Tiqets & Tickets
Pricing
from $2.20 / 1,000 tour / activity scrapeds
Tours & Activities Scraper - Civitatis, Tiqets & Tickets
Scrape tours, activities & attraction tickets across Civitatis and Tiqets by city or URL. Get title, from price + discount, currency, rating, review count, duration, free cancellation, categories, location, geo and images. Multi-platform, monitoring, no login, no key, no browser.
Pricing
from $2.20 / 1,000 tour / activity scrapeds
Rating
0.0
(0)
Developer
Scrape Sage
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Tours & Activities Scraper — Civitatis, Tiqets, Prices, Reviews & Tickets
Extract complete tours, activities & attraction-ticket data from multiple marketplaces in one run — the fields thin scrapers leave empty: real "from" prices in the currency you choose, the original price and discount %, the average rating, the full review count, the duration, the free-cancellation flag, the categories/themes, the city & country, latitude/longitude and the image gallery. One unified, deduplicated, comparable dataset across Civitatis and Tiqets.
No login, no cookies, no browser — fast JSON-LD + HTML extraction with 99%+ reliability.
Why this Tours & Activities scraper?
The big experiences marketplaces that everyone wants (Viator, Klook) are aggressively bot-walled, so most scrapers only return reviews — or just the search cards with null for price, rating and location. This actor reads each platform's structured data and ships the richest multi-platform dataset in the category, with prices normalized to your currency and ratings normalized to a 0–5 scale so Civitatis and Tiqets are directly comparable side by side.
| Data | Typical scrapers | This actor |
|---|---|---|
| Multiple platforms in one run | ❌ single site | ✅ Civitatis + Tiqets |
| "From" price + currency you choose | partial / wrong currency | ✅ real price, your currency |
| Original price + discount % | ❌ | ✅ |
| Rating normalized to 0–5 + full review count | partial | ✅ |
| Duration | ❌ | ✅ |
| Free-cancellation flag | ❌ | ✅ |
| Categories / themes | ❌ | ✅ |
| City, country + latitude/longitude | ❌ city only | ✅ |
| Image gallery | partial | ✅ |
| Value score (0–100) per activity | ❌ | ✅ |
| Monitor mode — only new activities | ❌ | ✅ |
Use cases
- Travel market & pricing intelligence — track "from" prices, discounts, ratings and review velocity for any destination across more than one marketplace at once: Rome, Paris, Tokyo, New York, Barcelona, Dubai, and thousands more. Schedule recurring runs to watch price moves.
- Cross-platform price comparison — see the same attraction (e.g. the Colosseum or the Vatican Museums) priced on Civitatis vs Tiqets in one comparable table.
- Affiliate & travel content — populate destination guides, comparison pages and newsletters with structured experiences (price, rating, duration, images) at scale.
- OTA & metasearch catalogues — feed booking platforms and aggregators with clean, deduplicated activity data including geo and categories.
- Competitive & demand research — rank the highest-volume, best-rated experiences in a city by the built-in value score.
How to use
- Sign up for Apify — the free plan is enough to try this actor.
- Open the Tours & Activities Scraper, enter cities in
searchQueries(or paste Civitatis/Tiqets URLs intostartUrls), choose your currency and platforms, and click Start. - Watch results stream into the dataset table.
- Export as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the Apify API.
Input
{"searchQueries": ["Rome", "Paris", "Barcelona"],"platforms": ["civitatis", "tiqets"],"currency": "USD","language": "en","includeActivityDetails": false,"minRating": 4,"maxResults": 200,"maxResultsPerQuery": 60,"monitorMode": false}
- searchQueries — cities or destinations (e.g. "Rome", "Paris"). Each is resolved on every selected platform and crawled across its listing pages.
- platforms (default both) —
civitatisand/ortiqets. Civitatis is the deepest (60+ activities/city, paginated); Tiqets adds top museum & attraction tickets with ratings and prices. - startUrls — paste Civitatis or Tiqets city/destination URLs (or Civitatis activity pages) straight from your browser; each is auto-classified by platform.
- currency (default USD) — 3-letter ISO currency; the actual currency returned is always recorded in
priceCurrency. - language (default en) — 2-letter content/locale code.
- includeActivityDetails (default false) — fetch each Civitatis activity's detail page to enrich the description and image gallery. Leave OFF for a fast, cheap crawl (listing cards already carry price, rating, reviews, duration, free cancellation, categories and geo).
- minRating / minReviews / minPrice / maxPrice / freeCancellationOnly — filters.
- maxResults / maxResultsPerQuery — global and per-city/platform caps.
- monitorMode (default false) — emit only activities not seen in previous runs (see below).
Output
One record per activity (type: "activity"), tagged with its source platform:
{"type": "activity","platform": "civitatis","activityId": "1608","title": "Colosseum, Roman Forum & Palatine Hill Tour","url": "https://www.civitatis.com/en/rome/colosseum-roman-forum-palatine-hill-guided-tour/","description": "Travel back in time to Ancient Rome and discover the Colosseum, the Roman Forum and Palatine Hill on this guided tour with priority access.","priceFrom": 68.43,"priceCurrency": "USD","originalPrice": null,"discountPercent": null,"isFree": null,"rating": 4.65,"ratingOriginal": 9.3,"ratingScale": 10,"reviewCount": 42787,"bookingsCount": 465963,"durationText": "2h 30m - 3h","freeCancellation": true,"categories": ["Guided Tours"],"city": "Rome","country": null,"latitude": 41.891226,"longitude": 12.491262,"imageUrl": "https://civitatis-prod.s3.amazonaws.com/.../colosseum.jpg","score": 83,"searchQuery": "Rome","scrapedAt": "2026-06-16T12:00:00.000Z"}
Ratings are normalized to a 0–5 rating for cross-platform comparison, while ratingOriginal + ratingScale preserve each site's native scale (Civitatis is /10, Tiqets is /5).
Automate & schedule
Run this actor on autopilot and pull results into your own stack:
- Apify API — start runs, fetch datasets, and manage schedules over REST.
- apify-client for JavaScript and apify-client for Python — official SDKs.
- Schedules — run it hourly/daily/weekly to track prices or discover newly listed tours in a destination; perfect for price monitoring and affiliate feeds.
- Webhooks — trigger downstream actions (price-drop alert, CRM import, Slack notification) the moment a run finishes.
Monitor mode remembers the activity IDs returned in previous runs and emits only new ones next time. It is orthogonal to Apify Schedules — the schedule decides when a run happens, monitor mode decides what's new — so the two compose cleanly without conflict.
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });const run = await client.actor('scrapesage/tours-activities-scraper').call({searchQueries: ['Barcelona'],platforms: ['civitatis', 'tiqets'],currency: 'EUR',maxResults: 200,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Got ${items.length} activities across Civitatis & Tiqets`);
Integrate with any app
Connect the dataset to 5,000+ apps — no code required:
- Make — multi-step automation scenarios.
- Zapier — push new activities or price changes straight into your tools.
- Slack — get notified when a monitored destination lists new tours.
- Google Drive / Sheets — auto-export every run to a spreadsheet.
- Airbyte — pipe results into your data warehouse.
- GitHub — trigger runs from commits or releases.
Use with AI assistants (MCP)
The output is clean, LLM-ready JSON. You can call this actor from Claude, ChatGPT, or any agent framework through the Apify MCP server — ask your assistant to "find the top-rated Rome attractions under €50 on Civitatis and Tiqets and compare their prices" and let it run this scraper for you.
Agent-ready: autonomous payments (x402 & Skyfire)
This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:
- x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
- Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.
Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.
More scrapers from scrapesage
Build a complete travel & experiences intelligence stack:
- GetYourGuide Scraper — tours, activities, prices, reviews & supplier leads.
- Airbnb Scraper — stays, prices, availability and market monitoring.
- Eventbrite Scraper — events, ticket prices and organizer leads.
- Meetup Scraper — events, groups and organizer leads.
- Luma Scraper — lu.ma events and organizer leads.
- Sched Conference Scraper — sessions, speakers and sponsors.
- Foodpanda Scraper — restaurants, menus and local leads.
- Google Ads Transparency Scraper — who's advertising what, for travel ad intelligence.
Tips
- Currency: always set
currency(USD, EUR, GBP, AUD …). The platforms otherwise quote prices in the currency of the request IP. The currency actually returned is recorded inpriceCurrency. - Breadth: Civitatis paginates ~20 activities per page (raise
maxResultsPerQueryto go deeper); Tiqets returns the top attractions & tickets for a city. Add multiplesearchQueriesto cover more destinations. - Cost control: leave
includeActivityDetailsOFF — the listing cards are already rich (price, rating, reviews, duration, categories, geo). Turn it ON only when you need the full description and gallery. - Monitoring: combine Schedules with
monitorModeto track only newly listed tours, or rerun the same search to catch price changes.
FAQ
Which platforms does it cover? Civitatis and Tiqets today, behind one unified record so you can compare them directly. The adapter architecture means more marketplaces can be added over time.
How do I scrape activities for a specific city? Put the city in searchQueries (e.g. "Rome"), or paste a city URL from your browser into startUrls (e.g. https://www.civitatis.com/en/rome/).
Can I choose the price currency? Yes — set currency to any 3-letter ISO code (USD, EUR, GBP, AUD …). The currency actually returned is recorded in priceCurrency so values are never ambiguous.
Why are some ratings on a /10 scale? Civitatis rates out of 10, Tiqets out of 5. The actor normalizes both into a comparable 0–5 rating, and keeps the native value in ratingOriginal + ratingScale.
Can I export to Google Sheets, CSV, or Excel? Yes — one click in the dataset view, or automatically on every run via the Google Drive integration.
How do I monitor new tours or price changes automatically? Create a Schedule (e.g. daily) and turn on monitorMode to emit only newly listed activities, or rerun the same search to capture price moves; add a webhook or Zapier zap to push updates downstream.
A field is null — why? Some activities genuinely don't publish a discount, a duration, or every location field. Fields are null only when the data doesn't exist, not because the scraper skipped them.
Is scraping Civitatis or Tiqets legal? This actor collects publicly available data only. You are responsible for using the data in compliance with applicable laws (GDPR/CCPA for personal data) and each platform's terms.
Need help?
Open an issue on the actor's Issues tab, or visit the Apify help center. Feature requests are welcome — this actor is actively maintained.