SYSTEM all green source westjet.com queue 12,492 routes p99 latency 318ms dataflirt.com · scraper/westjet-com
RUN · 62 active pipelines · westjet.com live

WestJet flight data,
at warehouse scale.

We extract flight schedules, dynamic pricing across Econo and Premium cabins, route networks, and seat availability from WestJet. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Flights extracted
142K /day
Price updates
840K /24h
Routes monitored
4,219 /run
Active pipelines
62
Uptime
99.94%
Data Dictionary

Every field we extract from westjet.com

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

Complete list of extractable fields for Flight Schedules objects from westjet.com. All fields typed and schema-versioned.

flight_numberorigindestinationdeparture_timearrival_timeduration_minutesaircraft_typestopsoperated_bydays_of_week
flight_schedules
● 200 OK
"flight_number": "WS 102",
"origin": "YVR",
"destination": "YYC",
"departure_time": "2024-11-12T08:00:00-08:00",
"arrival_time": "2024-11-12T10:24:00-07:00",
"duration_minutes": 84,
"aircraft_type": "Boeing 737 MAX 8",
"operated_by": "WestJet"
# flight_numberorigindestinationdeparture_timearrival_timeduration_minutes
1
2
3

Complete list of extractable fields for Pricing & Fares objects from westjet.com. All fields typed and schema-versioned.

flight_numberdeparture_datefare_classbase_faretaxes_and_feestotal_pricecurrencyseats_remainingrefundablechange_fee_applies
pricing_& fares
● 200 OK
"flight_number": "WS 102",
"departure_date": "2024-11-12",
"fare_class": "EconoFlex",
"base_fare": 249.0,
"taxes_and_fees": 68.42,
"total_price": 317.42,
"currency": "CAD",
"seats_remaining": 4
# flight_numberdeparture_datefare_classbase_faretaxes_and_feestotal_price
1
2
3

Complete list of extractable fields for Route Network objects from westjet.com. All fields typed and schema-versioned.

origin_codeorigin_citydestination_codedestination_citydirect_flightfrequency_weeklyseasonal_routedistance_kmregioncountry
route_network
● 200 OK
"origin_code": "YYZ",
"origin_city": "Toronto",
"destination_code": "LGW",
"destination_city": "London",
"direct_flight": true,
"frequency_weekly": 7,
"seasonal_route": false,
"distance_km": 5742
# origin_codeorigin_citydestination_codedestination_citydirect_flightfrequency_weekly
1
2
3

Complete list of extractable fields for Cabin Classes objects from westjet.com. All fields typed and schema-versioned.

flight_numbercabin_typepitch_inchesseat_width_inchespower_outletswifi_availableentertainment_typemeal_servicebaggage_included
cabin_classes
● 200 OK
"flight_number": "WS 102",
"cabin_type": "Premium",
"pitch_inches": 33,
"power_outlets": true,
"wifi_available": true,
"meal_service": "Complimentary snacks and beverages",
"baggage_included": 2
# flight_numbercabin_typepitch_inchesseat_width_inchespower_outletswifi_available
1
2
3

Complete list of extractable fields for Ancillary Fees objects from westjet.com. All fields typed and schema-versioned.

route_typefare_classbaggage_typefirst_bag_feesecond_bag_feeseat_selection_minseat_selection_maxpet_in_cabin_feecurrency
ancillary_fees
● 200 OK
"route_type": "Domestic",
"fare_class": "Basic",
"first_bag_fee": 35.0,
"second_bag_fee": 55.0,
"seat_selection_min": 15.0,
"seat_selection_max": 50.0,
"currency": "CAD"
# route_typefare_classbaggage_typefirst_bag_feesecond_bag_feeseat_selection_min
1
2
3

Capabilities

Extract aviation intelligence — skip the infrastructure

Our WestJet scraper handles the complexity of modern airline booking engines: dynamic calendar grids, multi-step search flows, session state management, and aggressive anti-bot mitigation.

Comprehensive Flight Schedules

Extract departure and arrival times, flight durations, aircraft types, and operating carriers for all direct and connecting flights.

Dynamic Fare Tracking

Capture pricing across all fare tiers: Basic, Econo, EconoFlex, Premium, and Business, including base fares and tax breakdowns.

Calendar Grid Scraping

Extract 30-day price matrices to identify the lowest fares and seasonal pricing trends across specific routes.

Seat Availability Signals

Capture 'X seats left at this price' indicators to monitor inventory depletion and demand velocity.

Code-Share Detection

Identify Delta Air Lines and other partner-operated flights sold through the WestJet platform.

Ancillary Fee Extraction

Track baggage fees, seat selection costs, and other ancillary charges that vary by route and fare class.

Multi-Currency Support

Extract pricing in CAD, USD, GBP, and EUR depending on the point of sale and route configuration.

Anti-Bot Circumvention

Bypass Akamai bot protection using residential proxies, TLS fingerprinting, and human-like request pacing.

High-Frequency Updates

Run pipelines at hourly cadences for high-priority routes to capture intra-day yield management adjustments.

// engagement pipeline

From route list to warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide origin-destination pairs, travel dates, or full network requirements. We design the extraction schema together.

Pipeline Build
d 2–4

We configure Playwright crawlers, manage search sessions, and implement Akamai bypass strategies for westjet.com.

Validation & QA
d 4–6

Schema validation, null-rate checks on pricing fields, and route coverage verification before full launch.

Delivery
ongoing

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

Under the hood

How our WestJet pipeline handles the hard parts

Airlines deploy sophisticated countermeasures to protect pricing data. Here is how we maintain reliable extraction.

pipeline-monitor · westjet.com · 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
Bot Mitigation
Navigating Akamai protection

WestJet uses advanced bot mitigation that analyses TLS fingerprints, JS execution environments, and request headers. Our infrastructure uses residential IPs and fully hydrated Playwright sessions to mimic legitimate passenger searches.

Stateful Sessions
Managing search context

Flight search requires maintaining session state across multiple XHR requests. We handle cookie persistence and session tokens to ensure the pricing engine returns valid data for complex itineraries.

Dynamic DOM
Handling React/Angular renders

The booking engine is a single-page application heavily reliant on client-side rendering. We execute JavaScript and wait for specific network idle states before extracting DOM elements, ensuring no missing price nodes.

Rate Limiting
Distributed request pacing

Searching too many dates for a single route triggers IP bans. We distribute calendar searches across thousands of residential proxies, adhering to human-possible request rates per session.

Data Normalisation
Standardising aviation metrics

We normalise raw duration strings, timezone offsets, and currency formats into strict ISO standards, delivering machine-readable data ready for immediate analysis.

Applications

Who uses WestJet data — and how

Teams across industries use westjet.com data to build competitive products and smarter operations.

01
Competitive Intelligence

Rival airlines monitor WestJet's pricing adjustments across shared routes to optimise their own yield management strategies.

02
OTA Aggregation

Online travel agencies integrate direct pricing feeds to verify GDS data and ensure price parity across platforms.

03
Dynamic Pricing Models

Revenue management teams analyse historical fare fluctuations and seat depletion rates to train pricing algorithms.

04
Route Planning

Aviation consultants track frequency changes and seasonal route deployments to assess market capacity and demand.

05
Corporate Travel Optimisation

Enterprise travel managers monitor historical pricing on frequent corporate routes to negotiate better vendor contracts.

06
Disruption Analytics

Operations teams track schedule changes, aircraft swaps, and structural delays to model network reliability.

Why DataFlirt

"WestJet's route network and dynamic pricing engine hold critical market intelligence for North American aviation — but extracting it requires bypassing aggressive anti-bot layers."

Aviation data extraction is notoriously hostile. Scraping WestJet requires navigating Akamai bot protection, maintaining stateful search sessions, and handling complex calendar grids. DataFlirt manages the residential proxies and Playwright execution, delivering clean flight data so your engineers can focus on yield management and market analysis.

Technical Spec

WestJet scraper — technical capabilities

Everything supported by our westjet.com scraper — rendered SPA elements, auth walls, rate-limit evasion and beyond.

JavaScript rendering
Full Playwright sessions — required for SPA search flows and dynamic pricing grids
Supported
Akamai bypass
Residential proxy rotation with realistic TLS and browser fingerprinting
Supported
Calendar grid scraping
Extraction of 30-day fare matrices for low-fare discovery
Supported
Code-share detection
Identification of operating carrier vs marketing carrier
Supported
Multi-currency extraction
Capture fares in CAD, USD, EUR, GBP based on POS configuration
Supported
Real-time webhook delivery
HTTP POST per route search for immediate downstream processing
Supported
Historical tracking
Time-series data for fare changes on specific departure dates
Supported
WestJet Rewards account data
Extraction of personal frequent flyer miles and tier status
Partial
Booked passenger PNRs
Access to specific passenger reservation details and manifests
Partial
Member Exclusive fare booking
Automated execution of bookings using proprietary member credentials
Partial
Infrastructure

Infrastructure powering the WestJet pipeline

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

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright Stack

Scrapy manages route queuing and retry logic. Playwright handles the stateful SPA search flows, executing JavaScript to render final pricing structures.

Residential Proxy Infrastructure

We maintain pools of residential ISP proxies across North America. Rotation happens strategically to avoid triggering Akamai IP bans during calendar searches.

Cloud-Native Orchestration

Pipelines run on AWS Lambda (burst) and ECS (sustained). Airflow handles scheduling, dependency management, and SLA alerting. All state stored in managed Postgres.

Output & Delivery

Your data, your destination

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

JSON
Newline-delimited or nested — schema versioned per run
CSV
Flat file with typed columns — Excel/Sheets compatible
XLS
Excel spreadsheet format for business analysts
Parquet
Columnar format for BigQuery, Snowflake, Athena
AWS S3
Direct bucket delivery — compatible with any data lake
Webhook
HTTP POST per record for real-time downstream processing
API
REST endpoint for querying extracted flight data
PostgreSQL
Upsert into your existing schema with conflict resolution
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About westjet.com scraping, legality, and pipeline operations.

Ask us directly →
Is scraping WestJet legal?

Scraping publicly available flight schedules and pricing data is generally permissible under applicable law. DataFlirt targets only public, non-authenticated data. We do not extract personal passenger data, circumvent authentication walls, or violate GDPR/PIPEDA. Clients should review WestJet's ToS and consult legal counsel for specific use cases.

How do you bypass WestJet's anti-bot systems?

We use North American residential ISP proxies, full Playwright browser sessions with realistic TLS fingerprints, and strict request pacing. Our infrastructure handles session cookies correctly to ensure the booking engine returns valid pricing rather than blocking the request.

Can you extract all fare classes?

Yes. We capture pricing for Basic, Econo, EconoFlex, Premium, and Business classes, including the breakdown of base fares versus taxes and fees.

How fresh is the pricing data?

Pipelines can be configured to run daily, hourly, or on custom intervals. For high-priority routes, we support near real-time extraction to capture intra-day yield management changes.

Do you extract code-share flights?

Yes. We identify and extract flights operated by partner airlines (like Delta Air Lines) that are sold through the WestJet platform, clearly indicating the operating carrier.

What is the minimum viable engagement?

Our smallest packages start at a defined route list (typically 50-500 O&D pairs) with daily calendar extraction. For full network coverage, we price based on volume and delivery frequency. Contact us for a scoped quote.

Can I request a sample dataset before committing?

Yes. We provide a sample run of up to 20 routes across a 30-day departure window as part of the pre-engagement scoping process, allowing you to validate schema fit and data accuracy.

$ dataflirt scope --new-project --source=westjet.com 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 daily snapshot of key domestic routes or continuous price monitoring across the entire network — we scope, 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 →