Skip to content

Super U Scraper

Try for free

Scrape Super U, Hyper U and U Express grocery products from Courses U (coursesu.com) per store: prices, unit prices, promotions, availability, EAN barcodes, brands and categories.

🛒 Super U Scraper

Get Super U, Hyper U and U Express grocery products from Courses U (coursesu.com) as clean rows, priced by the store you choose: price, price per kg or litre, current offers (immediate discounts, multi-buy deals, Carte U loyalty offers, low prices), EAN barcode, brand, category path, rating and the store's name and address. Search by keyword, paste category or product links, or look up a basket of barcodes. No login and no Courses U account: 40 products arrive in about 10 seconds.

✨ Why use Super U Scraper?

  • 🏪 Real store prices — Système U prices, offers and ranges differ from store to store. Pick a store by id, link, postcode or city, and every row says which store priced it.
  • ⚡ Fast — 1,000 products in about 33 seconds; every promotion for six everyday searches (469 products) in 16 seconds (measured).
  • 🔥 Every offer, decoded — "-30 %" immediate discounts with the crossed-out price, "2+1 offert" and "-60 % sur le 2ème" multi-buy deals with the price for the lot, Carte U loyalty offers and "Prix bas" low prices, with start and end dates.
  • 🏷️ Barcode-ready — every row carries the EAN-13, so you can match it with your own catalogue or other retailers.
  • 🗂️ Full category path — aisle, shelf and sub-shelf on every row, plus Nutri-Score, rating, labels (Bio, Bleu Blanc Coeur, Produit frais...) and, with product details on, ingredients and nutrition values.
  • 🔓 No login, no setup — the site's protection is handled for you; you only say what to scrape.

🎯 Use cases

  • 📈 Price monitoring — track a fixed basket of EANs at one or several Super U, Hyper U or U Express stores every day or week.
  • 🏪 Store and retailer comparison — compare the same products between Système U stores, or with other supermarkets by EAN.
  • 🔥 Promotion tracking — collect every offer for "lait", "café" or "pâtes" with its label, lot price and end date.
  • 🧾 Catalogue enrichment — fill images, brands, categories, ingredients and nutrition values by barcode.
  • 🧠 Market research — measure own-label share (Produits U, U Bio...), price ranges and promotion intensity in any aisle.

🚀 How to use

  1. Enter one or more search terms (French works best, for example lait, pâtes, café), and/or paste coursesu.com links (search, category or product pages), and/or EAN barcodes.
  2. Choose the store: a store id (for example 24162 for Super U Paris Paul Bert), a store link (https://www.coursesu.com/drive-...), or a postcode or city for the nearest store with a drive. Without a store, the Hyper U in La Chapelle-sur-Erdre near Nantes (store 38368) is used.
  3. Set Max results per search or category (0 = everything the store lists).
  4. Optionally keep only products on promotion, a price range, some brands, U own brands or available products, and pick a sort order.
  5. Click Start, then download the results as JSON, CSV or Excel, or read them through the API.

📥 Input

FieldWhat it does
searchQueriesWords to search on coursesu.com, one per line.
startUrlsSearch (/recherche?q=..., with any filters or sort you picked on the site), category (/c/...), product (/p/.../<id>.html) or store (/drive-...) links.
eansEAN-13, EAN-8 or UPC barcodes to look up at the store.
maxResultsProducts per search or category and per store (default 20, 0 = all). Product links and barcodes are not limited.
storeIdsSystème U store ids or store links. Every search, link and barcode is read at each store.
storeLocationPostcode or city: the nearest Super U, Hyper U or U Express with a drive is added.
onlyPromotionsOnly products with a current offer at the store (the site's own Promotions filter).
minPrice / maxPrice / brands / onlyOwnBrands / inStockOnlyPrice range in euros, brands, U own brands only, available products only.
sortByRelevance, price or price per kg / L, applied by the site before Max results is counted.
includeDetailsDescription, ingredients, nutrition values, storage advice, net weight and manufacturer contact (default off).
{
  "searchQueries": ["lait", "pâtes", "café"],
  "startUrls": ["https://www.coursesu.com/c/epicerie-sucree"],
  "eans": ["3017620422003"],
  "storeLocation": "69001",
  "onlyPromotions": true,
  "maxResults": 50
}

📤 Output

One row per product and store. Main fields:

FieldExample
ean, title, brand, packaging3278692420025, "Yaourt au lait entier arômatisé framboise, MALO, 4x125g", MALO, 4x125g
price, currency, unitPrice, unitPriceUnit, unitPriceLabel2.08, EUR, 4.16, kg, "4,16 €/kg"
oldPricethe crossed-out price of an immediate discount, for example 3.14 for a product now at 2.19
availabletrue when the store sells it online right now
onPromotion, promotionLabel, promotionTypetrue, "-60% sur le 2 ème", multi-buy (or immediate-discount, loyalty-card, low-price)
promotionDescription, promotionPrice, promotionQuantity, promotionStart, promotionEnd, promotions"Soit 2,91 les 2", 2.91 for 2 items, from 2026-11-02 to 2026-11-15
category, subcategory, categoryName, categoryPath, categoryId"Produits laitiers, oeufs et fromages" › "Yaourts et fromages blancs" › "Yaourts aux fruits et aromatisés"
isOwnBrand, labels, nutriScore, rating, reviewCountfalse, ["Produit frais", "Label PME Plus"], C, 5, 4
storeId, storeName, storeFormat, storeAddress, storePostcode, storeCity38368, "Hyper U La Chapelle-Sur-Erdre", Hyper U, "Centre Commercial Viv Erdre", 44240, "La Chapelle Sur Erdre"
url, imageUrl, images, productIdproduct page and images
description, ingredients, nutrition, storage, netWeight, manufacturerwith product details on
position, searchQuery, sourceUrl, scrapedAtwhere the row came from

A real row from a test run (trimmed):

{
  "ean": "3278692420025",
  "title": "Yaourt au lait entier arômatisé framboise, MALO, 4x125g",
  "brand": "MALO",
  "packaging": "4x125g",
  "price": 2.08,
  "currency": "EUR",
  "unitPrice": 4.16,
  "unitPriceUnit": "kg",
  "unitPriceLabel": "4,16 €/kg",
  "available": true,
  "onPromotion": true,
  "promotionLabel": "-60% sur le 2 ème",
  "promotionType": "multi-buy",
  "promotionDescription": "-60% de remise immédiate sur le 2ème produit acheté. Soit 1,25€ d'économie. Soit 2,91 les 2 (2,92 €/kg les 2)",
  "promotionPrice": 2.91,
  "promotionQuantity": 2,
  "promotionStart": "2026-11-02",
  "promotionEnd": "2026-11-15",
  "isOwnBrand": false,
  "labels": ["Produit frais", "Label PME Plus"],
  "nutriScore": "C",
  "rating": 5,
  "reviewCount": 4,
  "categoryPath": ["Produits laitiers, oeufs et fromages", "Yaourts et fromages blancs", "Yaourts aux fruits et aromatisés"],
  "productId": "3892742",
  "url": "https://www.coursesu.com/p/yaourt-au-lait-entier-aromatise-framboise-malo-4x125g/3892742.html",
  "storeId": "38368",
  "storeName": "Hyper U La Chapelle-Sur-Erdre",
  "storeFormat": "Hyper U",
  "storePostcode": "44240",
  "storeCity": "La Chapelle Sur Erdre",
  "position": 7,
  "searchQuery": "lait",
  "scrapedAt": "2026-11-07T21:33:18.335Z"
}

💰 Pricing

You pay per product saved; platform usage (compute and proxy) is included in the price.

PlanPrice per product1,000 products
Free$0.01275$12.75
Starter$0.01275$12.75
Scale$0.01083$10.83
Business$0.00977$9.77

Examples from our test runs:

  • 2 searches × 20 products (the default example): 40 products in about 10 seconds ≈ $0.51 on Free, $0.39 on Business.
  • Every product on promotion for lait, pâtes, café, fromage, yaourt and chocolat at one store: 469 products in 16 seconds ≈ $5.98 on Free, $4.58 on Business.
  • 1,000 products of one aisle in 33 seconds ≈ $12.75 on Free, $9.77 on Business.

Set a maximum charge for the run and the scraper stops cleanly when it is reached, keeping every product saved so far. Barcodes or links the store does not sell are not charged.

❓ FAQ

Is it legal to scrape coursesu.com? The scraper reads the public product data any visitor sees after choosing a store, without logging in. Check that your use of the data respects the site's terms and the laws that apply to you.

Do I need a login, cookies or a proxy? No. The default proxy setting (French residential exits) works; if you pick other exits and the site's bot check refuses them, the run switches to French residential exits on its own.

Which store's prices do I get? The store you choose. Système U sets prices, offers and ranges per store, so the same product can cost a different amount elsewhere (in our tests the same 6 × 1 L milk pack cost €6.48 in Nantes and €7.13 near Toulouse). Every row has storeId, storeName and the store's address. Without a store, store 38368 (Hyper U La Chapelle-sur-Erdre, near Nantes) is used. A postcode or city picks the nearest store with a drive; several store ids read every search at each store.

How many products can I get? Set Max results to 0 for everything the store lists. In our test the Épicerie sucrée aisle of the default Hyper U listed about 3,900 products; large lists are read 18 products per page, as the site serves them.

What counts as a promotion? Everything the site's own Promotions filter returns and the store shows on the product: immediate discounts (immediate-discount, crossed-out price in oldPrice), multi-buy deals such as "2+1 offert" or "-60 % sur le 2ème" (multi-buy, lot price in promotionPrice), money credited to the Carte U loyalty card (loyalty-card) and "Prix bas" low prices (low-price).

Why is a field empty? Some products have no unit price, no Nutri-Score, no rating or no crossed-out price on the site. Detail fields (ingredients, nutrition...) are only filled when Include product details is on, and only when the site has them.

Can I schedule it or use the API? Yes. Schedule runs to follow prices and promotions over time, and start runs or read results through the Scrape.ly API or integrations.

⚠️ Limits

  • France only (coursesu.com), and only stores that sell online through Courses U (drive or home delivery).
  • Prices are those of the chosen store's online shop, which can differ from the shelf price in the store.
  • Searches list what the store offers online. Products a store lists without a price (not orderable there at the moment) are skipped and counted in the run's status message; product links and barcodes the store does not sell show up as "not found".
  • promotionLabel is the site's own short badge in French; promotionDescription is the site's explanation of the offer.
  • Price filters are applied by the scraper after reading the pages, so a narrow price range on a large category reads more pages before it reaches Max results.
  • Reviews, recipes and the printed leaflet are not collected.

Related actors

//From the blog\\

Latest articles

All articles

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes.

No credit card. No setup calls.