Tours & Activities Scraper - Civitatis, Tiqets & Tickets avatar

Tours & Activities Scraper - Civitatis, Tiqets & Tickets

Pricing

from $2.20 / 1,000 tour / activity scrapeds

Go to Apify Store
Tours & Activities Scraper - Civitatis, Tiqets & Tickets

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

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

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.

DataTypical scrapersThis actor
Multiple platforms in one run❌ single site✅ Civitatis + Tiqets
"From" price + currency you choosepartial / wrong currency✅ real price, your currency
Original price + discount %
Rating normalized to 0–5 + full review countpartial
Duration
Free-cancellation flag
Categories / themes
City, country + latitude/longitude❌ city only
Image gallerypartial
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

  1. Sign up for Apify — the free plan is enough to try this actor.
  2. Open the Tours & Activities Scraper, enter cities in searchQueries (or paste Civitatis/Tiqets URLs into startUrls), choose your currency and platforms, and click Start.
  3. Watch results stream into the dataset table.
  4. 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)civitatis and/or tiqets. 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:

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 in priceCurrency.
  • Breadth: Civitatis paginates ~20 activities per page (raise maxResultsPerQuery to go deeper); Tiqets returns the top attractions & tickets for a city. Add multiple searchQueries to cover more destinations.
  • Cost control: leave includeActivityDetails OFF — 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 monitorMode to 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.