SYSTEM all green source intercape.co.za queue 3,194 routes p99 latency 412ms dataflirt.com · scraper/intercape-co.za
RUN · 12 active pipelines · intercape.co.za live

Intercape transport data,
at warehouse scale.

We extract schedules, dynamic pricing, route stopovers, and Sleepliner availability from Intercape. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Departures tracked
1,492 /day
Price updates
12,840 /24h
Routes mapped
385 /run
Active pipelines
12
Uptime
99.94%
Data Dictionary

Every field we extract from intercape.co.za

Structured, schema-consistent data across all major object types — delivered clean, typed, and ready to query.

Complete list of extractable fields for Routes & Schedules objects from intercape.co.za. All fields typed and schema-versioned.

route_idorigin_citydestination_citydeparture_timearrival_timeduration_minutesdistance_kmbus_typestops_countschedule_url
routes_& schedules
● 200 OK
"route_id": "CPT-JHB-001",
"origin_city": "Cape Town",
"destination_city": "Johannesburg",
"departure_time": "2026-08-14T14:00:00Z",
"arrival_time": "2026-08-15T09:30:00Z",
"bus_type": "Sleepliner",
"stops_count": 4
# route_idorigin_citydestination_citydeparture_timearrival_timeduration_minutes
1
2
3

Complete list of extractable fields for Pricing & Availability objects from intercape.co.za. All fields typed and schema-versioned.

route_iddeparture_dateprice_zardiscount_pricecurrencyseats_availableticket_classpromo_eligiblescraped_at
pricing_& availability
● 200 OK
"route_id": "CPT-JHB-001",
"departure_date": "2026-08-14",
"price_zar": 850.0,
"currency": "ZAR",
"seats_available": 12,
"ticket_class": "Sleepliner",
"scraped_at": "2026-08-01T10:15:22Z"
# route_iddeparture_dateprice_zardiscount_pricecurrencyseats_available
1
2
3

Complete list of extractable fields for Bus Classes & Fleet objects from intercape.co.za. All fields typed and schema-versioned.

bus_typeclass_nameseat_pitch_cmrecline_anglewifi_availableusb_chargingtoilet_onboardair_conditioningentertainment_system
bus_classes & fleet
● 200 OK
"bus_type": "Sleepliner",
"class_name": "Premium",
"seat_pitch_cm": 85,
"wifi_available": true,
"usb_charging": true,
"toilet_onboard": true,
"air_conditioning": true
# bus_typeclass_nameseat_pitch_cmrecline_anglewifi_availableusb_charging
1
2
3

Complete list of extractable fields for Stops & Boarding objects from intercape.co.za. All fields typed and schema-versioned.

stop_idstop_namecitycountrylatitudelongitudeaddresslocation_typefacilities_available
stops_& boarding
● 200 OK
"stop_id": "STP-CPT-01",
"stop_name": "Cape Town Station",
"city": "Cape Town",
"country": "South Africa",
"latitude": -33.9221,
"longitude": 18.4251,
"address": "Old Marine Drive, Foreshore"
# stop_idstop_namecitycountrylatitudelongitude
1
2
3

Complete list of extractable fields for Discounts & Policies objects from intercape.co.za. All fields typed and schema-versioned.

policy_idpassenger_typediscount_pctconditionsbaggage_allowance_kgexcess_baggage_feecancellation_feechange_fee
discounts_& policies
● 200 OK
"policy_id": "POL-SNR-2026",
"passenger_type": "Senior Citizen",
"discount_pct": 15,
"baggage_allowance_kg": 20,
"excess_baggage_fee": 50.0,
"cancellation_fee": 100.0,
"change_fee": 50.0
# policy_idpassenger_typediscount_pctconditionsbaggage_allowance_kgexcess_baggage_fee
1
2
3

Capabilities

Everything you need from Intercape - nothing you don't

Our Intercape scraper navigates complex search forms, session tokens, and route permutations across Southern Africa to extract accurate schedules and dynamic pricing.

Route & Schedule Extraction

Extract the full network across South Africa, Namibia, Botswana, Mozambique, Zimbabwe, and Malawi.

Dynamic Price Tracking

Capture fluctuating ticket prices based on demand, departure proximity, and seasonal variations.

Seat Availability Monitoring

Track remaining capacity for specific departures to gauge route popularity and load factors.

Bus Class Differentiation

Separate Mainliner versus Sleepliner amenities, seating configurations, and pricing tiers.

Multi-Stop Route Mapping

Extract intermediate boarding and drop-off points for long-haul intercity journeys.

Geolocation Data

Capture precise latitude and longitude coordinates for physical bus stops and stations.

Cross-Border Operations

Track international route specific requirements and estimated border post transit times.

Discount & Promo Tracking

Monitor senior, student, and child fare variations alongside standard adult ticket prices.

Scheduled & Streaming Modes

Run daily synchronisation tasks or continuous pricing monitors with change-detection diffing.

// engagement pipeline

From route list to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide origin-destination pairs or full network mandates. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Playwright crawlers, session management, and proxy rotation for intercape.co.za.

Validation & QA
d 4–6

Schema validation, null-rate checks, price-outlier detection, and schedule verification before launch.

Delivery
ongoing

JSON, CSV, or Parquet pushed to your S3 bucket, BigQuery dataset, or Snowflake stage on agreed cadence.

Under the hood

How our Intercape pipeline handles the hard parts

Transport booking sites rely on heavy session state and dynamic payloads. Here is how we maintain stable data extraction.

pipeline-monitor · intercape.co.za · live ● active
// fingerprinting
Identity rotation
TLS fingerprintrandomised
User-agentrotated
IP poolresidential
Challenges blocked0
// pagination
Page coverage
48,291 pages queued running
// observability
Pipeline health
99.9%
uptime
142ms
p99 lat
0.3%
null rate
2
alerts
Session state
Session token management

Intercape requires valid session cookies and verification tokens to process search queries. Our infrastructure maintains persistent cookie jars and token rotation to ensure search forms submit successfully without triggering invalid request errors.

Dynamic UI
Playwright form submission

The site uses dynamic date pickers and AJAX-loaded location dropdowns. We use full Playwright browser automation to interact with these elements exactly as a human user would, capturing the resulting JSON payloads or DOM updates.

Anti-bot layer
Regional proxy rotation

High-frequency pricing checks often trigger rate limits or geo-blocks. We route traffic through South African residential IP pools to maintain high trust scores and avoid IP bans during intensive crawl cycles.

Schema stability
Resilient selectors

Transport sites frequently update their booking interface layouts. We implement multi-layered fallback selectors targeting CSS classes, XPath, and internal API responses to ensure data flows even when the frontend changes.

Change detection
Hash-based pricing diffs

To reduce downstream processing, we hash route pricing records. The pipeline only emits new data when ticket costs fluctuate or seat availability drops, providing a clean log of market movements.

Applications

Who uses Intercape data - and how

Teams across industries use intercape.co.za data to build competitive products and smarter operations.

01
Competitor Price Monitoring

Rival bus operators track Intercape pricing to adjust their own dynamic fares and remain competitive on shared routes.

02
Travel Aggregation

OTA platforms integrate schedule and pricing data into multi-modal transport engines for comprehensive journey planning.

03
Route Optimisation

Transport analysts study frequency and capacity across corridors to identify underserved markets and optimise fleet deployment.

04
Tourism Planning

Tour operators sync intercity bus availability with local accommodation packages to create unified travel itineraries.

05
Economic Indicators

Analysts track cross-border passenger transport volume as a proxy for regional economic activity and migration patterns.

06
Academic Transport Research

Urban planners utilise historical schedule data to model regional mobility networks and assess public transport accessibility.

Why DataFlirt

"Intercity bus networks form the circulatory system of Southern Africa. Querying that schedule data programmatically requires navigating complex session states."

Most teams underestimate the investment required: reliable transport scraping requires managing search session tokens, rendering dynamic date pickers, and handling regional IP blocks. DataFlirt absorbs that complexity so your engineers can focus on the analysis, not the infrastructure.

Technical Spec

Intercape scraper - technical capabilities

Everything supported by our intercape.co.za scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions required for date pickers and location dropdowns
Supported
ZA Residential proxies
Local South African IP pools to avoid geo-blocking and rate limits
Supported
Session token management
Handling search state cookies and hidden form verification tokens
Supported
Multi-currency extraction
Capture pricing in ZAR, NAD, or BWP depending on origin country
Supported
Stopover geocoding
Latitude and longitude extraction for boarding points and stations
Supported
Change detection (diffs)
Hash-based diff to only emit records when ticket prices change
Supported
Webhook delivery
HTTP POST for real-time price alerts and availability drops
Supported
User booking history
Requires authenticated account access to Intercape profiles
Partial
Payment gateway responses
Credit card processing endpoints and transactional data
Partial
Infrastructure

Infrastructure powering the transport pipeline

Open-source tooling on proven cloud infra — no vendor lock-in, full observability.

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy handles crawl orchestration and deduplication. Playwright handles JavaScript rendering, date picker interaction, and token management.

Regional Proxy Infrastructure

We maintain pools of residential ISP proxies across Southern Africa. Rotation happens per-request to avoid regional rate limits.

Cloud-Native Orchestration

Pipelines run on AWS Lambda and ECS. Airflow handles scheduling, dependency management, and SLA alerting.

Output & Delivery

Your data, your destination

Data delivered to where your team already works — no new tooling required.

JSON
Newline-delimited or nested array payloads
CSV
Flat file with typed columns for route tabular data
XLS
Excel format for manual analyst review
Parquet
Columnar format for BigQuery, Snowflake, and Athena
AWS S3
Direct bucket delivery compatible with any data lake
Webhook
HTTP POST per record for real-time downstream processing
API
REST endpoints to query extracted historical schedules
PostgreSQL
Upsert into your existing schema with conflict resolution
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About intercape.co.za scraping, legality, and pipeline operations.

Ask us directly →
Is scraping Intercape legal?

Scraping publicly available schedule and pricing information is generally permissible. DataFlirt targets only public, non-authenticated route data. We do not extract personal user data or circumvent authentication walls.

How do you handle the dynamic search forms?

We use Playwright to automate browser interactions, selecting origins, destinations, and dates exactly as a human would, ensuring the correct session tokens are generated for the search request.

Can you extract data for cross-border routes?

Yes. We cover the entire Intercape network, including routes spanning South Africa, Namibia, Botswana, Mozambique, Zimbabwe, and Malawi.

How fresh is the pricing data?

Pipelines can be configured to run daily for general schedule monitoring, or at hourly intervals for specific high-priority routes to track dynamic pricing changes.

Do you capture both Mainliner and Sleepliner classes?

Yes. The extraction schema separates bus classes, capturing the distinct pricing, amenities, and availability for both Mainliner and Sleepliner services.

What is the minimum viable engagement?

Our minimum engagement typically starts with a defined list of origin-destination pairs monitored on a daily cadence. Contact us with your specific route requirements for a quote.

$ dataflirt scope --new-project --source=intercape.co.za ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Whether you need a one-off route network export or a continuous price-monitoring feed across Southern Africa, we build and operate the pipeline. Tell us what you need.

hello@dataflirt.com · Bengaluru · IST · typical reply < 4h
Related Scrapers

More in travel flights hotels buses

Services

Data Extraction for Every Industry

View All Services →