SYSTEM all green source but.fr queue 12,841 pages p99 latency 184ms dataflirt.com · scraper/but-fr
RUN * 14 active pipelines * but.fr live

But.fr data,
at warehouse scale.

We extract furniture listings, pricing signals, store-level stock, technical specifications, and reviews from but.fr. Delivered as clean JSON, CSV, or Parquet to S3, BigQuery, or Snowflake on your cadence.

Products extracted
145K /day
Price updates
312K /24h
Store stock checks
89K /run
Active pipelines
14
Uptime
99.94%
Data Dictionary

Every field we extract from but.fr

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

Complete list of extractable fields for Product Listings objects from but.fr. All fields typed and schema-versioned.

skueantitlebrandcategorysub_categorypricecurrencyeco_taxin_stock_onlineratingreview_countdescriptionimage_urlsenergy_classurl
product_listings
● 200 OK
"sku": "B892103",
"ean": "3450218921034",
"title": "Canapé d'angle convertible tissu gris",
"brand": "Signature",
"price": 599.99,
"eco_tax": 10.5,
"category": "Canapé et Fauteuil",
"in_stock_online": true
# skueantitlebrandcategorysub_category
1
2
3

Complete list of extractable fields for Pricing & Promos objects from but.fr. All fields typed and schema-versioned.

skubase_pricediscount_pricediscount_pctpromo_nameeco_taxcurrencyvalid_untilis_soldesis_french_daysscraped_at
pricing_& promos
● 200 OK
"sku": "B892103",
"base_price": 799.99,
"discount_price": 599.99,
"discount_pct": 25,
"promo_name": "Soldes d'hiver",
"eco_tax": 10.5,
"is_soldes": true,
"scraped_at": "2026-01-15T08:12:00Z"
# skubase_pricediscount_pricediscount_pctpromo_nameeco_tax
1
2
3

Complete list of extractable fields for Stock & Delivery objects from but.fr. All fields typed and schema-versioned.

skuonline_stock_statusstore_idstore_namestore_stock_statusclick_and_collect_eligibledelivery_costdelivery_time_daysassembly_offeredassembly_cost
stock_& delivery
● 200 OK
"sku": "B892103",
"online_stock_status": "En stock",
"store_id": "BUT_124",
"store_name": "But Paris Wagram",
"store_stock_status": "Retrait sous 2h",
"click_and_collect_eligible": true,
"delivery_cost": 49.0
# skuonline_stock_statusstore_idstore_namestore_stock_statusclick_and_collect_eligible
1
2
3

Complete list of extractable fields for Specifications objects from but.fr. All fields typed and schema-versioned.

skuweight_kgheight_cmwidth_cmdepth_cmmaterial_primarycolourassembly_requiredwarranty_monthsorigin_countrypackage_count
specifications
● 200 OK
"sku": "B892103",
"weight_kg": 85.4,
"height_cm": 88.0,
"width_cm": 245.0,
"depth_cm": 160.0,
"material_primary": "Tissu",
"colour": "Gris",
"assembly_required": true
# skuweight_kgheight_cmwidth_cmdepth_cmmaterial_primary
1
2
3

Complete list of extractable fields for Reviews objects from but.fr. All fields typed and schema-versioned.

review_idskuratingauthor_namereview_datereview_titlereview_bodyhelpful_votesverified_purchaserecommend_product
reviews
● 200 OK
"review_id": "REV_94821",
"sku": "B892103",
"rating": 4,
"author_name": "Jean D.",
"review_date": "2025-11-04",
"review_body": "Très confortable et facile à monter.",
"verified_purchase": true,
"recommend_product": true
# review_idskuratingauthor_namereview_datereview_title
1
2
3

Capabilities

Complete visibility into the French furniture market

Our but.fr scraper extracts the full catalogue: from dimensional specifications and eco-taxes to store-level stock availability across France. Built with residential proxies to bypass regional blocking.

Full Catalogue Extraction

Capture titles, descriptions, images, and category paths for every piece of furniture, appliance, and decorative item on but.fr.

Dynamic Pricing & Promos

Track base prices, promotional discounts, Soldes events, and French Days offers. Includes mandatory French eco-tax extraction.

Store-Level Availability

Extract Click & Collect availability and stock levels across specific But retail locations throughout France.

Technical Specifications

Scrape precise dimensions, weights, materials, colours, and energy efficiency classes critical for furniture and appliance retail.

Delivery & Assembly Data

Capture shipping costs, estimated delivery windows, and optional assembly service fees tied to specific SKUs.

Customer Reviews

Extract star ratings, written feedback, and verified purchase flags to monitor product sentiment and quality issues.

Variant Mapping

Link parent products to their colour and size variations, ensuring accurate data representation for complex furniture sets.

Geo-Targeted Crawling

Utilise French residential proxies to render localised pricing and bypass regional access restrictions.

Scheduled Pipelines

Run daily or weekly extraction cycles to maintain an up-to-date view of the catalogue and competitor movements.

// engagement pipeline

From category URL to structured warehouse record

Brief in. Clean data out.

Define Scope
d 0

Provide category URLs, search terms, or specific SKU lists. We design the extraction schema for your specific furniture data needs.

Pipeline Build
d 2–4

We configure Scrapy crawlers, French proxy rotation, and session management to handle but.fr's infrastructure.

Validation & QA
d 4–6

Schema validation, null-rate checks, and dimension format normalisation before full production launch.

Delivery
ongoing

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

Under the hood

Overcoming retail scraping challenges

Extracting data from major French retailers requires handling regional blocking, dynamic stock APIs, and complex product variants. Here is how we ensure reliable delivery.

pipeline-monitor · but.fr · 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
Geo-blocking
French residential proxy pools

Retailers often block or serve altered content to non-domestic IP addresses. We route all requests through high-quality French residential proxies to ensure we capture the exact pricing and stock data seen by local consumers.

Dynamic stock APIs
Store-level inventory extraction

Store availability on but.fr is loaded dynamically via background API calls. Our Playwright integration intercepts these network requests to extract accurate local stock statuses across multiple store IDs.

Complex variants
Normalising furniture options

A single sofa might have dozens of combinations of fabric, colour, and corner orientation. Our parsers map these complex variant matrices into flat, queryable database rows.

Data normalisation
Standardising dimensions and weights

Dimensions and weights are often listed inconsistently. We parse and normalise measurements into standard numeric fields (e.g., height_cm, weight_kg) so you can filter and sort immediately.

Change detection
Efficient delta updates

We hash product records and only deliver rows that have changed since the last run. This reduces your ingestion costs and highlights immediate pricing or stock movements.

Applications

Who uses but.fr data

Teams across industries use but.fr data to build competitive products and smarter operations.

01
Competitor Price Monitoring

Furniture retailers track but.fr pricing, Soldes discounts, and delivery fees to optimise their own promotional calendars.

02
Assortment Planning

Merchandising teams analyse category depth, brand representation, and material trends to inform their purchasing decisions.

03
Local Retail Analytics

Market analysts track store-level stock availability to understand regional demand patterns and supply chain efficiency.

04
Inflation Tracking

Economic researchers monitor base prices and eco-taxes across core furniture categories to measure consumer price inflation.

05
Catalogue Enrichment

Marketplaces extract detailed dimensional and material specifications to enrich their own product taxonomy and search filters.

06
Review Sentiment Analysis

Brands selling through but.fr aggregate customer reviews to identify manufacturing defects and improve product design.

Why DataFlirt

"Accurate furniture data requires more than just scraping titles; you need precise dimensions, eco-taxes, and local stock visibility to understand the market."

Building a reliable scraper for French retail sites involves navigating strict geo-blocking, dynamic API endpoints for local stock, and highly variable product specification formats. DataFlirt manages this entire infrastructure, delivering structured, normalised data so your team can focus on market analysis rather than maintaining CSS selectors.

Technical Spec

But.fr scraper capabilities

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

JavaScript rendering
Playwright sessions required for dynamic stock and delivery estimation widgets
Supported
French proxy routing
Requests routed through FR residential IPs to bypass geo-restrictions
Supported
Store-level stock
Extraction of inventory status for specific physical store locations
Supported
Eco-tax parsing
Separation of base price and mandatory environmental contributions
Supported
Variant extraction
Mapping of all colour, material, and size options per product
Supported
Dimension normalisation
Conversion of raw text measurements into standard numeric columns
Supported
Review pagination
Extraction of all historical customer reviews and star ratings
Supported
Change detection
Hash-based delta delivery for pricing and stock updates
Supported
User cart data
Extraction of items currently saved in a specific user session
Partial
Loyalty points (Carte BUT)
Access to personalized loyalty program balances and rewards
Partial
Infrastructure

Infrastructure powering the pipeline

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

ScrapyPlaywrightPython 3.12RedisPostgreSQLApache AirflowAWS LambdaS3CloudWatch2CaptchaCapSolverResidential ProxiesDockerKubernetesGrafanaPrometheus
Scrapy + Playwright

Scrapy manages crawl logic and request queues, while Playwright handles JavaScript execution for dynamic stock availability endpoints.

Localised Proxy Pools

We utilise dedicated French residential proxy networks to ensure consistent access and accurate regional pricing display.

Cloud-Native Delivery

Pipelines orchestrated via Airflow on Kubernetes, ensuring reliable scheduling and automated retries for large catalogue crawls.

Output & Delivery

Your data, your destination

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

JSON
Newline-delimited JSON for nested product variants and reviews
CSV
Flat tabular files ideal for merchandising team analysis
XLS
Excel format for immediate business user access
Parquet
Columnar format optimised for BigQuery and Snowflake ingestion
AWS S3
Direct upload to your cloud storage buckets
Webhook
HTTP POST delivery for immediate downstream processing
API
REST endpoints to query your extracted dataset
Postgres
Direct database upserts with schema management
S3
Direct bucket delivery — compatible with any data lake
// faq

Common questions.

About but.fr scraping, legality, and pipeline operations.

Ask us directly →
Can you extract stock levels for specific But stores?

Yes. We can configure the pipeline to query availability APIs for specific store IDs, providing a clear view of local inventory and Click & Collect eligibility.

How do you handle complex furniture variants?

Our parsers map parent products to all possible child variants (e.g., combinations of fabric type, colour, and orientation). Each variant is delivered as a distinct record with its specific price, SKU, and stock status.

Do you extract the French eco-tax separately?

Yes. We parse the total price and isolate the mandatory 'éco-participation' fee into a distinct numeric column, allowing for accurate base price comparisons.

How frequently can you update the pricing data?

For targeted SKU lists, we can run daily or intra-day pipelines. For full catalogue extractions, we typically recommend a weekly cadence to balance data freshness with compute efficiency.

Are product dimensions standardised?

We apply normalisation routines to convert raw text dimensions (often mixed formats) into standard numeric columns for height, width, depth, and weight, ensuring the data is immediately queryable.

Do you bypass geo-blocking?

Yes. We route all requests through high-quality French residential proxies to ensure we receive the correct localised content and avoid IP-based access restrictions.

$ dataflirt scope --new-project --source=but.fr 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 full catalogue extraction or daily price monitoring for specific furniture categories, we build and operate the pipeline. Contact us to define your schema.

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

More in furniture

Services

Data Extraction for Every Industry

View All Services →