Åhléns Scraper — Swedish Department Store Prices & Stock avatar

Åhléns Scraper — Swedish Department Store Prices & Stock

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
Åhléns Scraper — Swedish Department Store Prices & Stock

Åhléns Scraper — Swedish Department Store Prices & Stock

Scrape product data from ahlens.se, Sweden's major mid-market department store chain. Extract names, brands, prices, stock levels and images via Åhléns' own product search, in SEK.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 hours ago

Last modified

Categories

Share

Åhléns Scraper

Pull product data from ahlens.se, Sweden's major mid-market department store chain. This scraper talks directly to Åhléns' own product search API, so it returns clean, structured data -- brand, price, stock, images -- without any HTML parsing or browser rendering.

How to scrape Åhléns data

Give the actor a search term and it queries Åhléns' own storefront search directly, paginating until it hits maxResults or runs out of matching products. There's nothing else to configure -- no category URLs to hunt down, no cookies, no login.

Under the hood, ahlens.se is a Next.js storefront, but search results are not rendered server-side -- they come from a third-party merchandising/search engine, Apptus eSales, called directly from the browser with no authentication. This actor calls that API directly instead of waiting on a browser to render and hydrate the page, which makes it faster and far less likely to break when Åhléns tweaks its frontend markup.

If you don't provide a search term, it defaults to searching for "klänning" (Swedish for "dress") as a demo, so an empty run still returns data.

A note on color variants

Åhléns groups a product's color options together internally, but each color has its own distinct product page URL. This actor treats every color variant as its own output row -- the same convention as every other product scraper in the fleet, one row per distinct URL -- so a dress sold in five colors comes back as five rows, each with its own productId, image and stock count.

Input

FieldTypeDescription
searchQuerystringSearch term, in Swedish (e.g. "klänning", "väska", "kastrull")
maxResultsintegerCap on number of products returned (default: 100, max: 5000)
proxyConfigurationobjectApify proxy settings. Åhléns' search API has no anti-bot protection, so the default automatic Apify proxy is sufficient

What you get back

FieldTypeExample
namestring"Pippi-klänning med tyllkjol SPARKLE"
brandstring"PIPPI"
pricenumber | null299
originalPricenumber | null299 (equal to price when not discounted)
currencystring"SEK"
skustring"61069224" (numeric product code, from the first size variant)
productIdstring"943febcf-6d11-4171-8497-f18aed7afe79" (Åhléns' internal ID, unique per color)
eanstring | nullNot exposed by Åhléns' search API -- always null
inStockboolean | nulltrue
stockLevelinteger | null584 (total units, summed across size variants)
urlstringFull product page URL, unique per color
imageUrlstring | nullPrimary product image
imageUrlsarrayProduct image URLs at multiple resolutions
categorystring | null"barn" (top-level site section: dam/herr/barn/hem/skönhet/...)
descriptionstring | nullNot exposed by Åhléns' search API -- always null
ratingnumber | nullNot exposed by Åhléns' search API -- always null
reviewCountinteger | nullNot exposed by Åhléns' search API -- always null
specsobject | null{"color": "Pink"}, when the source tags a color
scrapedAtstringISO timestamp
searchQuerystringThe search term used to find this product (input echo)

Sample output

{
"name": "Pippi-klänning med tyllkjol SPARKLE",
"brand": "PIPPI",
"price": 299,
"originalPrice": 299,
"currency": "SEK",
"sku": "61069224",
"productId": "943febcf-6d11-4171-8497-f18aed7afe79",
"ean": null,
"inStock": true,
"stockLevel": 584,
"url": "https://www.ahlens.se/produkter/barn/pippi-klanning-med-tyllkjol-sparkle-943febcf-6d11-4171-8497-f18aed7afe79",
"imageUrl": "https://media.ahlens.se/image/upload/f_auto,t_ProductListMobile/products/bg_removed/61/06/92/61069225_PIPPI_PIPPI SPARKLE Tulle Dress_AW26-32_1.jpg",
"imageUrls": [
"https://media.ahlens.se/image/upload/f_auto,t_ProductListMobile/products/bg_removed/61/06/92/61069225_PIPPI_PIPPI SPARKLE Tulle Dress_AW26-32_1.jpg",
"https://media.ahlens.se/image/upload/f_auto,t_ProductListLarge/products/bg_removed/61/06/92/61069225_PIPPI_PIPPI SPARKLE Tulle Dress_AW26-32_1.jpg",
"https://media.ahlens.se/image/upload/f_auto,t_ProductList/products/bg_removed/61/06/92/61069225_PIPPI_PIPPI SPARKLE Tulle Dress_AW26-32_1.jpg"
],
"category": "barn",
"description": null,
"rating": null,
"reviewCount": null,
"specs": { "color": "Pink" },
"scrapedAt": "2026-09-10T09:09:47.484Z",
"searchQuery": "klänning"
}

Use cases

  • Price monitoring -- track Åhléns' price changes over time on the brands and categories you sell against, including "was" price whenever an item is discounted.
  • Assortment research -- Åhléns stocks fashion, home, beauty, kids and toys across dozens of own-label and third-party brands; see what it carries and at what price points.
  • Stock and availability tracking -- inStock/stockLevel give a live read on which items are selling through, down to the color variant.
  • Market comparison -- as Sweden's major mid-market department store chain, Åhléns is a useful comparison point against other Nordic multi-category retailers (Manor in Switzerland, Stockmann in Finland).

Coverage

v1 covers the Swedish online storefront (www.ahlens.se, SEK pricing).

Performance and cost

The scraper hits Åhléns' own Apptus eSales search API directly -- no browser rendering, no HTML parsing -- so it's fast. A run of 100 products typically completes in a few seconds. This actor charges $0.005 per run (start fee) plus $0.002 per result -- a 100-product run costs about $0.205. Your run's usage cost only settles after the run reports SUCCEEDED -- checking cost mid-run will undercount it.

Limitations

  • Keyword search only, matching Åhléns' own on-site search. It does not accept direct category or product URLs.
  • The search API doesn't expose EAN/GTIN, product description, or rating/review data -- those fields always come back null. If you need them, they require a separate product-page fetch, which this v1 doesn't do.
  • category is a single top-level site section slug (e.g. "barn" for kids), not a full breadcrumb path -- the search API doesn't return the full category tree.
  • originalPrice equals price when an item isn't currently discounted -- there is no separate "on sale" boolean, compare the two fields yourself.
  • v1 targets the Swedish storefront (SEK) only.

If you're covering European department-store and multi-category retail more broadly, also check out:

Maintained by Studio Amba

We run 700+ scrapers for European websites, and the priority is keeping every one of them working. Automated runs test this actor against the live site and verify the output is complete. When the website changes, the scraper usually gets repaired the same day, without you having to report anything.

Need this data on a schedule, or a custom version?

We run this scraper as a managed service for businesses: scheduled runs, deduplication, delta detection, and delivery to your inbox, Google Sheets, or API, maintenance included. We can also build a custom version with your exact fields and filters, or combine multiple sources into one feed.

See studioamba.dev/services or email hello@studioamba.dev for a free data sample.

Support

Found an issue or need a different market covered? Open an issue on this actor's Apify Store page and we'll take a look.