REMA 1000 Denmark Scraper — Groceries & EAN
Pricing
from $2.00 / 1,000 result scrapeds
REMA 1000 Denmark Scraper — Groceries & EAN
Scrape the REMA 1000 Denmark discount-grocery chain by keyword: product names, prices in DKK, unit prices, categories, images and EAN barcodes. No login or cookies.
Pricing
from $2.00 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Studio Amba
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
REMA 1000 Denmark Scraper
Scrape REMA 1000 (rema1000.dk), Denmark's largest discount-grocery chain, by keyword and get clean, structured product data: names, prices in DKK, unit prices, categories, images and EAN barcodes.
REMA 1000 runs its own public product-search API. This actor calls it directly, so you get fast, reliable grocery data without a login, cookies or a browser — and every result already carries its EAN barcode, no extra product-page fetch required.
Why use this actor?
If you track Danish grocery prices, match products by barcode, build a price-comparison tool, or feed a market-research dataset, you need structured product data you can rely on. This actor turns any REMA 1000 search into a table of products with current prices in DKK, unit prices and EAN barcodes.
Typical users:
- Price-intelligence and price-comparison platforms tracking Danish retail.
- Brands and suppliers matching their catalogue by EAN barcode.
- Market researchers and analysts building Nordic grocery datasets.
- Developers who need a clean product feed instead of scraping HTML themselves.
How to scrape REMA 1000 data
- Open the actor in the Apify Console.
- Enter a search query in Danish — for example
mælk,kylling,ølorbrød. Leave it empty to browse the full catalogue. - Set maxResults to how many products you want.
- Leave the proxy on the default Apify setting and click Start.
- When the run finishes, download the results as JSON, CSV, Excel or feed them to an API.
The actor calls REMA 1000's own search API directly, walks the pagination for your query at 200 products per request, and writes one clean record per product — including the EAN barcode, which comes back in the same response as the price, so there's no separate detail-page fetch.
Input
| Field | Type | Required | Description |
|---|---|---|---|
searchQuery | String | No | Keyword to search in Danish (default: mælk) |
maxResults | Integer | No | Maximum products to return (default: 100) |
proxyConfiguration | Object | No | Apify proxy settings (default Apify proxy works) |
Example input
{"searchQuery": "mælk","maxResults": 20,"proxyConfiguration": { "useApifyProxy": true }}
Output
Each result contains:
| Field | Type | Example |
|---|---|---|
name | String | "Sødmælk 3,5%" |
brand | String | "Arla" |
price | Number | 7.95 |
currency | String | "DKK" |
pricePerUnit | String | "15.9 kr/ltr" |
size | String | "0.5 LTR. / ARLA" |
discount | String | "campaign" |
campaignEndsAt | String | "2026-07-18T00:00:00+00:00" |
ean | String | "5700426101026" |
sku | String | "20302" |
productId | String | "20302" |
category | String | "Mejeri > Mælk m.v." |
imageUrl | String | Primary product image URL |
url | String | Full product page URL |
scrapedAt | String | ISO 8601 timestamp |
discount and campaignEndsAt are present only when a product is on a running weekly offer ("kampagne"). brand is a best-effort read of REMA 1000's free-text size/description field and is not always available — some products only carry an origin tag (e.g. "DANSK") instead of a brand name, in which case brand is omitted.
Example output
{"name": "Sødmælk 3,5%","brand": "Arla","price": 7.95,"currency": "DKK","pricePerUnit": "15.9 kr/ltr","size": "0.5 LTR. / ARLA","ean": "5700426101026","sku": "20302","productId": "20302","category": "Mejeri > Mælk m.v.","imageUrl": "https://rema-product-images.digital.rema1000.dk/20302/1-large-kAonyAjPx8.webp","url": "https://shop.rema1000.dk/varer/20302","scrapedAt": "2026-07-14T19:00:00.000Z"}
Notes and limitations
- Prices are the current online prices in DKK, matched to today's date against REMA 1000's own price-validity windows (so you always get the price that's actually active, campaign or not).
- The
shop.rema1000.dkwebsite itself is geo-blocked outside Denmark, but the underlying product API this actor calls is not — no residential proxy needed. - REMA 1000's full catalogue is around 3,900 SKUs. A broad or empty search query walks the whole catalogue at 200 products per request.
brandis best-effort only — REMA 1000's API does not expose a clean, dedicated brand field.- Some products carry more than one barcode (multi-pack variants); this actor returns the first one as
ean.
Cost
Pricing is pay-per-result. Because the actor calls a JSON API directly (no browser, no per-product detail fetch), a run of a few hundred products typically finishes in well under a minute.
Related Scrapers
Build a complete view of European grocery retail with these sibling scrapers from Studio AMBA:
- Continente Portugal Scraper — Portuguese supermarket products, prices and EAN (continente.pt).
- Dia ES Scraper — Spanish supermarket products and prices (dia.es).
- BILLA Austria Scraper — Austrian supermarket products and promotions (shop.billa.at).
- Esselunga IT Scraper — Italian supermarket products and discounts (esselunga.it).
- Mercadona Scraper — Spain's largest supermarket (mercadona.es).
- Colruyt Scraper — Belgian grocery prices (colruyt.be).
- Delhaize Scraper — Belgian supermarket products (delhaize.be).
- Tesco Scraper — UK groceries and Clubcard offers (tesco.com).