SYSTEM all green source witchery.com.au queue 4,192 pages p99 latency 318ms dataflirt.com · scraper/witchery-com.au
RUN · 14 active pipelines · witchery.com.au live

Witchery apparel data,
at warehouse scale.

We extract product catalogues, pricing signals, stock depth per size, fabric compositions, and styling metadata from Witchery. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your schedule.

Products extracted
8,402 /run
Price updates
12,105 /24h
Stock updates
42,910 /run
Active pipelines
14
Uptime
99.98%
Data Dictionary

Every field we extract from witchery.com.au

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

Complete list of extractable fields for Product Information objects from witchery.com.au. All fields typed and schema-versioned.

skutitlecategorysub_categorypricelist_pricecurrencydescriptionfabric_compositioncare_instructionsstyling_notescolour_namecolour_heximage_urlscollection_namepage_url
product_information
● 200 OK
"sku": "60284912",
"title": "Linen Blend Blazer",
"price": 299.95,
"currency": "AUD",
"colour_name": "Chalk",
"fabric_composition": "55% Linen, 45% Viscose",
"collection_name": "Spring Tailoring"
# skutitlecategorysub_categorypricelist_price
1
2
3

Complete list of extractable fields for Sizing & Inventory objects from witchery.com.au. All fields typed and schema-versioned.

skuparent_skusize_codesize_namein_stocklow_stock_warningstock_quantityavailability_statusexpected_restock_datestore_availability_flag
sizing_& inventory
● 200 OK
"sku": "60284912-CHLK-10",
"size_name": "10",
"in_stock": true,
"low_stock_warning": false,
"availability_status": "AVAILABLE",
"store_availability_flag": true,
"parent_sku": "60284912"
# skuparent_skusize_codesize_namein_stocklow_stock_warning
1
2
3

Complete list of extractable fields for Pricing & Promotions objects from witchery.com.au. All fields typed and schema-versioned.

skubase_pricecurrent_pricediscount_pctdiscount_absis_sale_itempromotion_textmember_pricemember_discountprice_timestampcurrency
pricing_& promotions
● 200 OK
"sku": "60284912",
"current_price": 249.95,
"base_price": 299.95,
"discount_pct": 16,
"is_sale_item": true,
"promotion_text": "Take an extra 20% off sale",
"price_timestamp": "2023-10-25T14:30:00Z"
# skubase_pricecurrent_pricediscount_pctdiscount_absis_sale_item
1
2
3

Complete list of extractable fields for Styling & Cross-Sells objects from witchery.com.au. All fields typed and schema-versioned.

primary_skuprimary_titlestyled_with_skustyled_with_titlestyled_with_urlstyled_with_pricestyled_with_imagerelationship_typeposition_index
styling_& cross-sells
● 200 OK
"primary_sku": "60284912",
"styled_with_sku": "60284915",
"styled_with_title": "Linen Wide Leg Pant",
"relationship_type": "shop_the_look",
"styled_with_price": 149.95,
"position_index": 1
# primary_skuprimary_titlestyled_with_skustyled_with_titlestyled_with_urlstyled_with_price
1
2
3

Complete list of extractable fields for Category Taxonomy objects from witchery.com.au. All fields typed and schema-versioned.

category_idcategory_nameparent_categorybreadcrumbsurl_pathproduct_countmeta_titlemeta_descriptionscraped_at
category_taxonomy
● 200 OK
"category_name": "Blazers",
"parent_category": "Clothing",
"breadcrumbs": "['Women', 'Clothing', 'Jackets & Coats', 'Blazers']",
"product_count": 42,
"scraped_at": "2023-10-25T14:31:00Z",
"meta_title": "Women's Blazers | Witchery"
# category_idcategory_nameparent_categorybreadcrumbsurl_pathproduct_count
1
2
3

Capabilities

Extract the complete Witchery catalogue with precision

Our Witchery scraper captures every detail from high-resolution imagery and fabric compositions to real-time size availability and markdown events, bypassing anti-bot measures.

Full Product Metadata

Extract titles, descriptions, fabric compositions, and care instructions parsed into clean, queryable fields.

Size & Inventory Tracking

Monitor stock status and low-stock warnings for every size and colour variant across the catalogue.

Dynamic Pricing & Markdowns

Capture base prices, sale prices, percentage discounts, and promotional overlay text timestamped per run.

Colour Variant Mapping

Link distinct colour URLs back to their parent product SKU for accurate assortment analysis.

Shop The Look Extraction

Extract styled-with cross-sell relationships from product pages to map outfit combinations.

High-Resolution Imagery

Extract CDN links for all product angles and styling shots at maximum resolution.

Category Hierarchy

Parse breadcrumbs, taxonomy structures, and collection tags to maintain accurate product categorisation.

Automated Pagination

Crawl through infinite scroll implementations and paginated category grids without dropping records.

Scheduled Diffs

Configure runs to only export products with changed price or stock status to reduce downstream processing.

// engagement pipeline

From category URL to structured warehouse data

Brief in. Clean data out.

Define Scope
d 0

Provide target categories or the full catalogue. We map the required fields and delivery frequency.

Pipeline Build
d 2–4

We configure Scrapy and Playwright to navigate Witchery's frontend, intercepting API calls for inventory.

Validation & QA
d 4–6

Schema validation, null-rate checks, and price anomaly detection are run before production.

Delivery
ongoing

JSON, CSV, or Parquet pushed to your S3 bucket or Snowflake stage on your defined schedule.

Under the hood

Navigating Witchery's frontend architecture

Modern fashion retailers use dynamic rendering and aggressive caching. Here is how we ensure data completeness.

pipeline-monitor · witchery.com.au · 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
Dynamic Inventory
Extracting size-level stock states

Witchery loads size availability dynamically via API calls. We intercept these XHR responses to map exact in-stock and low-stock indicators per size variant.

Image CDN
High-resolution asset extraction

Product images are served via dynamic CDNs with multiple resolution parameters. We parse the source sets to extract the highest quality asset URLs without downloading the binaries.

Geo-Routing
Australian residential proxies

To guarantee accurate domestic pricing and avoid geo-blocks, all requests are routed through Australian residential IP pools with rotating sessions.

State Hydration
Parsing frontend state

Instead of relying solely on DOM scraping, our parsers extract the underlying JSON state injected into the page, ensuring 100% accuracy for pricing and variant mapping.

Delta Exports
Tracking fast-moving inventory

Fashion inventory moves quickly during sales. We hash previous run states and only deliver records where price, size availability, or promotional tags have changed.

Applications

Who uses Witchery data

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

01
Competitor Price Monitoring

Fashion retailers track Witchery's pricing architecture, markdown cadences, and promotional events to adjust their own strategies.

02
Assortment Planning

Merchandisers analyse category depth, colour prevalence, and fabric choices to inform seasonal buying decisions.

03
Inventory Trend Analysis

Track which sizes and colours sell out first to model demand curves and optimise manufacturing runs.

04
Market Aggregators

Fashion search engines and affiliate platforms ingest clean catalogue feeds to maintain accurate outbound links.

05
Material & Sustainability Audits

Extract fabric composition data to benchmark the usage of linen, organic cotton, and recycled materials across the sector.

06
Visual AI Training

Computer vision teams use structured product imagery and metadata to train garment recognition and auto-tagging models.

Why DataFlirt

"Fashion data decays rapidly. If you are not tracking size-level stock and markdown events daily, your competitive intelligence is already obsolete."

Extracting data from premium fashion retailers requires more than simple HTTP requests. Witchery's dynamic variant loading, promotional overlays, and CDN image management demand a sophisticated extraction pipeline. DataFlirt manages the proxies, the JavaScript rendering, and the schema validation, delivering clean, warehouse-ready data so your analysts can focus on strategy.

Technical Spec

Witchery scraper technical specifications

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

Size-level availability
In-stock, out-of-stock, and low-stock warnings per size
Supported
Fabric & Care extraction
Structured parsing of material composition percentages
Supported
Australian IP routing
AU residential proxies to ensure accurate local pricing
Supported
Cross-sell mapping
Extracting 'Wear It With' and styled-with product relationships
Supported
High-res image URLs
Capture maximum resolution CDN links for all product angles
Supported
Delta / Diff exports
Only export products with changed price or stock status
Supported
Witchery Member Rewards
Personalised loyalty tier pricing and point balances
Partial
In-store click & collect stock
Real-time inventory levels for specific physical retail locations
Partial
Infrastructure

Infrastructure powering the extraction

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

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Headless Browser Fleet

Playwright clusters handle frontend state hydration and dynamic XHR interception for size and stock data.

Proxy Orchestration

AU-specific residential IP pools ensure accurate domestic pricing and prevent automated blocking.

Schema Validation

Post-crawl data is validated against strict JSON schemas to catch missing prices or malformed SKUs before delivery.

Output & Delivery

Your data, your destination

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

JSON
Newline-delimited or nested JSON
CSV
Flat file with typed columns
XLS
Excel compatible format for business teams
Parquet
Columnar format for BigQuery, Snowflake, Athena
AWS S3
Direct bucket delivery
Webhook
HTTP POST per record for real-time processing
API
REST endpoint for on-demand querying
PostgreSQL
Direct database upserts
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About witchery.com.au scraping, legality, and pipeline operations.

Ask us directly →
Can you extract size-specific inventory data from Witchery?

Yes. We intercept the dynamic API calls on product pages to capture the exact availability status (in stock, low stock, out of stock) for every size and colour variant.

How do you handle Witchery's sale and promotional pricing?

Our parsers extract the base price, the current markdown price, and any promotional text. We calculate the absolute and percentage discounts automatically.

Is the data delivered with Australian pricing?

Yes. We route all extraction requests through Australian residential proxies to ensure we capture the correct AUD pricing and domestic inventory levels.

Can you capture the fabric composition?

Yes. We parse the product details section to extract fabric composition, care instructions, and styling notes into distinct, structured fields.

How frequently can you update the catalogue?

We support daily, weekly, or custom schedules. For active sales periods, we can run intra-day delta updates targeting only pricing and stock availability.

Do you extract 'Shop the Look' recommendations?

Yes. We map the primary product SKU to all recommended cross-sell SKUs featured in the styling sections.

$ dataflirt scope --new-project --source=witchery.com.au ready

Tell us what
to extract.
We do the rest.

20-minute scoping call. Pilot dataset within the week. Production within two. Get structured product, pricing, and sizing data delivered directly to your warehouse. Contact us to design your extraction schema.

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

More in fashion and apparel

Services

Data Extraction for Every Industry

View All Services →