Skip to content

Seoudi Supermarket Scraper

Try for free

Scrape Seoudi Supermarket (seoudisupermarket.com, Egypt) grocery products with English and Arabic names, prices, discounted prices, availability, branch stock, categories, brands, pack sizes and barcodes. Read the whole catalogue for daily price lists. No login needed.

🛒 Seoudi Supermarket Scraper

Get Seoudi Supermarket (seoudisupermarket.com, Egypt) grocery products as clean rows: English and Arabic name, price, regular and discounted price, availability, brand, category in both languages, pack size and the EAN barcode. Search by keyword, paste category, brand, deals or product links, look up barcodes, or read the whole catalogue of about 27,500 products in one run. No login and no Seoudi account needed.

✨ Why use Seoudi Supermarket Scraper?

  • 🌍 English and Arabic in one row — nameEn and nameAr, plus the category path in both languages, so one run feeds both versions of your catalogue.
  • 🏷️ Barcode-ready — about 92% of products carry an EAN/UPC barcode with a valid check digit (barcode); in-store codes of weighed and loose items are left out, and every row keeps the site's SKU.
  • 💸 Promotions made simple — price (what you pay now), regularPrice, discountedPrice, discountPercent and the promotion end date.
  • 📦 Whole catalogue, every day — all categories plus the sitemap's other product pages, each product once: 27,518 products in about 3 minutes in our latest test (up to about 15 minutes measured on a busy platform).
  • 🏬 Branch stock — pick a delivery area or a branch to get that branch's availability and stock.
  • 🔓 No login, no setup — you only enter what to scrape.

🎯 Use cases

  • 📈 Daily price tracking — schedule the whole catalogue every morning and compare prices and promotions day by day.
  • 🔥 Promotion monitoring — collect every product sold below its regular price, with the discount and its end date.
  • 🧾 Catalogue matching by barcode — join Seoudi's prices with your own product list or with other Egyptian retailers.
  • 🌐 Bilingual product data — English and Arabic names and categories for apps, comparison sites and marketplaces.
  • 🏬 Assortment and stock checks — see which products a branch carries and which are out of stock.
  • 🧠 Market research — brand share, price ranges and pack sizes across any aisle.

🚀 How to use

  1. Enter one or more search terms (English or Arabic, for example milk, coffee, جبنة), and/or paste seoudisupermarket.com links (category, search, brand, deals or product pages, /en/ or /ar/), and/or barcodes. For the full store, turn on Whole catalogue.
  2. Set Max results per search or category (0 = everything the site lists; with Whole catalogue it limits the whole run).
  3. Optionally keep only products on promotion or only available products, and choose a delivery area or branch code for branch stock.
  4. Click Start, then download the results as JSON, CSV or Excel, or read them through the API.

📅 Run it every day

For a daily price list of the whole store:

  1. Use this input (every product, all branches, English and Arabic names):
{
  "wholeCatalogue": true,
  "maxResults": 0
}
  1. Save it as a task and add a Schedule (for example every day at 06:00 Cairo time).
  2. Each run saves one row per product with scrapedAt, so you can append the datasets and compare prices over time.

Add "onlyPromotions": true for a daily list of current offers only, or "area": "Nasr City" for the stock of the branch that delivers there.

📥 Input

FieldWhat it does
searchQueriesSearch terms, English or Arabic
startUrlsCategory, search, brand, deals or product links (/en/ or /ar/)
wholeCatalogueEvery product of the site, each once
barcodesEAN barcodes or the site's SKUs
maxResultsProducts per search or link (whole catalogue: in total); 0 = all
onlyPromotions, inStockOnlyOnly discounted products / only products in stock
area, storeSourceDelivery area (district, city or region) or branch code for branch stock
{
  "searchQueries": ["milk"],
  "startUrls": ["https://seoudisupermarket.com/en/dairy-eggs-cheese"],
  "maxResults": 50,
  "onlyPromotions": false
}

📤 Output

One row per product. Main fields:

FieldExample
sku, barcode, productId6225000473737, 6225000473737, 251646
nameEn, nameAr"Gro Coconut Milk - 1 Liter", "جرو لبن جوز الهند - 1 لتر"
brand, size, sizeValue, sizeUnitGro, "1 Liter", 1, l
soldByWeight, priceUnit, sellingStep, stepPrice, stepRegularPriceweighed items: true, kg, 0.6, 117, 117 (Baramili cheese at 195 per kg, sold in steps of 600 g)
price, regularPrice, discountedPrice, originalPrice139.95, 159.95, 139.95, 159.95
onPromotion, discountPercent, discountAmount, promotionEndtrue, 12.5, 20, 2026-11-24
available, availability, stockQuantity, maxOrderQuantitytrue, in_stock, 1118, 10000
category, categoryPath, categoryAr, categoryPathAr, categories"Dairy, Eggs & Cheese" › "Milk" › "Alternative Milk" / "الألبان، البيض والجبنة" › "اللبن" › "بدائل اللبن"
url, urlAr, imageUrlEnglish and Arabic product pages, product image
store, storeSource, area"All branches" or the chosen branch
currency, position, searchQuery, source, sourceUrl, scrapedAtEGP and where the row came from

price is the current price for one priceUnit: one item for packaged products, one kilogram for products sold by weight (soldByWeight true, size "per kg"). For weighed products the site sells and displays a step of sellingStep kg: stepPrice is the price it shows for that step (price x sellingStep) and stepRegularPrice the same before any discount. When a product is on promotion, discountedPrice equals price and originalPrice / regularPrice hold the price before the discount; otherwise discountedPrice and originalPrice are empty.

A real row from a test run (trimmed):

{
  "productId": 9141899,
  "sku": "6223002382200",
  "barcode": "6223002382200",
  "name": "Danone Greek Yogurt with Pineapple and Peach - 170 g",
  "nameEn": "Danone Greek Yogurt with Pineapple and Peach - 170 g",
  "nameAr": "دانون زبادي يوناني بالاناناس والخوخ - 170 جم",
  "brand": "Danone",
  "category": "Greek Yogurt",
  "categoryPath": ["Dairy, Eggs & Cheese", "Yogurt", "Greek Yogurt"],
  "categoryPathAr": ["الألبان، البيض والجبنة", "الزبادي", "زبادي يوناني"],
  "size": "170 g",
  "sizeValue": 170,
  "sizeUnit": "g",
  "price": 40,
  "regularPrice": 40,
  "originalPrice": null,
  "discountedPrice": null,
  "onPromotion": false,
  "currency": "EGP",
  "available": true,
  "availability": "in_stock",
  "stockQuantity": 303,
  "url": "https://seoudisupermarket.com/en/danone-greek-yogurt-with-pineapple-and-peach-170-g",
  "urlAr": "https://seoudisupermarket.com/ar/danone-greek-yogurt-with-pineapple-and-peach-170-g",
  "store": "All branches",
  "scrapedAt": "2026-11-12T19:33:17.079Z"
}

💰 Pricing

You pay per product saved, plus a fee per run (Actor start, charged once per run). Apart from the start fee, only saved products are charged.

EventFreeStarterScaleBusiness
Product (per 1,000)$2.00$1.70$1.70$1.70
Actor start (per run)$0.01$0.0085$0.0085$0.0085

Platform usage (compute and proxy) is included. Worked examples from our test runs:

  • The whole catalogue: 27,518 products in about 3 minutes ≈ $55.05 on Free, $46.79 on Business.
  • Every product on promotion today (whole catalogue, only promotions): 3,279 products in about 2 minutes ≈ $6.57 on Free, $5.58 on Business.
  • The default example (milk, 20 products): 20 products ≈ $0.05 on Free.

Set a maximum charge for the run and the scraper stops cleanly when it is reached, keeping every product saved so far.

❓ FAQ

Is it legal to scrape seoudisupermarket.com? The scraper reads public product data that any visitor can see, without logging in. Check that your use of the data respects Seoudi's terms and the laws that apply to you.

Do I need a login, cookies or a proxy? No. The default datacenter proxy works for this site; you only enter what to scrape.

Which branch are the prices from? Prices on seoudisupermarket.com are the same in every delivery area (we compared the same products at several branches). Availability is not: without an area the run lists the whole online catalogue with availability across all branches; with area or storeSource it lists only what that branch carries, with that branch's stock. Every row says which branch it describes (store, storeSource, area).

How many products can I get? Everything: set Max results to 0 or use Whole catalogue (about 27,500 products today). The site's search service lists at most 10,000 products per query, so the whole catalogue is read in price bands that each stay under that limit. That listing leaves out some live products (about 1,440 today, for example products without a picture), so Whole catalogue also reads every product page in the site's sitemap that the listing did not return. Each product is saved once.

Why is a field empty? Some products have no barcode on the site (fresh, weighed and loose items use in-store codes, about 8%), no brand (about 15%) or no pack size. Fields are never invented: an empty field means the site does not show it.

Can I schedule it or use the API? Yes. See "Run it every day" above; runs can also be started and read through the Scrape.ly API and integrations.

⚠️ Limits

  • Egypt only (seoudisupermarket.com). Prices are the site's online prices.
  • stockQuantity is the quantity the site reports for online orders; it is not a shelf count.
  • The site's search lists at most 10,000 products per search term; narrow very broad searches (category links and the whole catalogue are not affected).
  • Shopping carts, delivery slots, customer prices and loyalty points are not covered.

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.