Apotea Scraper — Swedish Online Pharmacy Products & Prices
Pricing
Pay per event
Apotea Scraper — Swedish Online Pharmacy Products & Prices
Scrape Sweden's largest online pharmacy, Apotea.se. Get product names, prices, brands, EANs, ratings, stock status, and images for medications and health products.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Jelle Desramaults
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
Apotea Scraper -- Sweden's Largest Online Pharmacy: Products, Prices & Stock Data
Extract products, prices, brands, EAN codes, ratings, availability, and descriptions from Apotea.se -- Sweden's biggest online pharmacy and health products retailer, offering over 15,000 products ranging from prescription-free medications and vitamins to skincare, baby care, and wellness products.
What is Apotea Scraper?
Apotea disrupted the Swedish pharmacy market when prescription drug sales were deregulated. Today, it is Sweden's largest online pharmacy by volume, known for competitive pricing, fast delivery, and an enormous catalogue of health-related products. The platform is the primary pricing reference for the Swedish pharmacy and wellness market.
This actor handles Apotea's Cloudflare protection using TLS fingerprint rotation via got-scraping, with automatic fallback to CheerioCrawler. It extracts product data from both JSON-LD structured data and HTML parsing across search results, category pages, and individual product pages. What people build with it:
- Pharmacy pricing intelligence -- competing pharmacies (Apotek Hjartat, Kronans Apotek, Lloyds Apotek) monitor Apotea's prices to maintain market-competitive positioning in the Swedish pharmacy sector.
- Health product market research -- consumer health brands and supplement manufacturers track how their products are priced, described, and rated on Sweden's largest pharmacy platform.
- Regulatory compliance monitoring -- pharmaceutical industry bodies track which products are available on Apotea, at what prices, and how they are marketed to consumers.
- Product catalogue enrichment -- health tech platforms and comparison sites use Apotea's structured product data (EAN codes, descriptions, images) to populate their own databases.
- Consumer trend analysis -- market researchers analyse Apotea's category structure, bestsellers, and ratings to understand Swedish consumer health and wellness preferences.
What data does Apotea Scraper extract?
Each product record includes:
- :pill: Product name -- full product title in Swedish
- :label: Brand -- manufacturer or brand name
- :moneybag: Price -- current price in SEK (Swedish kronor)
- :money_with_wings: Original price -- regular price if the product is on sale
- :currency_exchange: Currency -- SEK
- :barcode: EAN code -- GTIN barcode for product identification
- :id: SKU and product ID -- internal product identifiers
- :white_check_mark: Stock status -- whether the product is in stock
- :star: Rating -- user rating score
- :speech_balloon: Review count -- number of customer reviews
- :camera: Images -- primary image and full gallery URLs
- :page_facing_up: Description -- product description text
- :file_folder: Category and breadcrumbs -- full category path in Apotea's taxonomy
- :globe_with_meridians: Language --
"sv"(Swedish) - :link: URL -- direct product link on apotea.se
How to scrape Apotea.se
| Field | Type | Required | Description |
|---|---|---|---|
searchQuery | String | No | Search by keyword: "vitamin", "ibuprofen", "solskydd" (sunscreen) |
categoryUrl | String | No | Apotea category URL, e.g. https://www.apotea.se/kategori/vitaminer-mineraler |
maxResults | Integer | No | Maximum products to return (default: 100, max: 10,000) |
proxyConfiguration | Object | No | Proxy settings (residential proxies recommended for Cloudflare bypass) |
Tips:
- Use Swedish keywords for best coverage:
"vitaminer"(vitamins),"hudvard"(skincare),"tandvard"(dental care),"barnprodukter"(baby products). - Apotea uses Cloudflare Turnstile protection. Residential proxies significantly improve success rates compared to datacenter proxies.
- For category-wide scraping, browse apotea.se to find the category URL and paste it into
categoryUrl. - The actor automatically tries got-scraping (TLS fingerprint rotation) first, falling back to CheerioCrawler if needed.
Output
{"name": "Apotea Vitamin D3 2000 IE 90 kapslar","brand": "Apotea","price": 79,"originalPrice": 99,"currency": "SEK","ean": "7350083590123","sku": "APT-VD3-90","inStock": true,"rating": 4.6,"reviewCount": 1247,"imageUrl": "https://www.apotea.se/media/products/vitamin-d3-2000ie.jpg","imageUrls": ["https://www.apotea.se/media/products/vitamin-d3-2000ie.jpg","https://www.apotea.se/media/products/vitamin-d3-2000ie-back.jpg"],"description": "Vitamin D3 i kapselform for dagligt bruk. Varje kapsel innehaller 2000 IE (50 mikrogram) vitamin D3. Bidrar till normal funktion av immunsystemet...","category": "Vitaminer > Vitamin D","categories": ["Halsa", "Vitaminer & mineraler", "Vitamin D"],"language": "sv","url": "https://www.apotea.se/apotea-vitamin-d3-2000ie-90-kapslar","scrapedAt": "2026-04-03T17:00:00.000Z"}
How much does it cost?
Costs vary depending on whether got-scraping or CheerioCrawler handles the requests:
| Volume | Estimated CUs | Estimated Cost |
|---|---|---|
| 100 products | ~0.05 | ~$0.025 |
| 500 products | ~0.20 | ~$0.10 |
| 1,000 products | ~0.40 | ~$0.20 |
| 5,000 products | ~1.80 | ~$0.90 |
Cloudflare bypass attempts may increase compute costs. Residential proxies add to the per-request proxy cost but improve reliability.
Can I integrate?
Connect Swedish pharmacy data to your tools:
- Google Sheets -- track prices on your product portfolio across the Swedish pharmacy market
- Slack -- get alerts when specific health products go on sale on Apotea
- Zapier / Make -- automate pricing updates for your competing pharmacy or health store
- Webhooks -- stream product data to your own health product comparison platform
- PostgreSQL / BigQuery -- build a historical Swedish health product pricing database
- Power BI -- visualise pricing trends in Swedish pharmacy categories
Can I use it as an API?
Yes. Build Swedish health product intelligence into your stack:
Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("studio-amba/apotea-scraper").call(run_input={"searchQuery": "vitamin C","maxResults": 50,"proxyConfiguration": {"useApifyProxy": True, "apifyProxyGroups": ["RESIDENTIAL"]},})for product in client.dataset(run["defaultDatasetId"]).iterate_items():stock = "I lager" if product.get('inStock') else "Slut"print(f"{product['name']} | {product['price']} SEK | {stock}")
JavaScript:
import { ApifyClient } from "apify-client";const client = new ApifyClient({ token: "YOUR_API_TOKEN" });const run = await client.actor("studio-amba/apotea-scraper").call({searchQuery: "vitamin C",maxResults: 50,proxyConfiguration: { useApifyProxy: true, apifyProxyGroups: ["RESIDENTIAL"] },});const { items } = await client.dataset(run.defaultDatasetId).listItems();const onSale = items.filter((p) => p.originalPrice && p.originalPrice > p.price);console.log(`${onSale.length} products on sale:`);onSale.forEach((p) => {const discount = Math.round((1 - p.price / p.originalPrice) * 100);console.log(` ${p.name} | ${p.price} SEK (was ${p.originalPrice}, -${discount}%)`);});
FAQ
Does Apotea sell prescription medications? Apotea sells both prescription-free (receptfria) medications and prescription drugs. This actor scrapes product data from public product pages, which are primarily non-prescription items, supplements, and health products.
Is all data in Swedish? Yes. Product names, descriptions, and categories are in Swedish. The platform serves the Swedish market exclusively.
Why do I need residential proxies? Apotea.se uses Cloudflare Turnstile protection. Residential proxies have a much higher success rate at bypassing this protection compared to datacenter proxies. The actor will still work without residential proxies, but success rates may be lower.
Can I get prices without proxy? The actor tests whether direct HTTP access works on each run. If Cloudflare is not actively challenging your IP, it works without proxies. However, for reliable production use, residential proxies are strongly recommended.
How does the dual scraping strategy work? The actor first attempts direct HTTP requests using got-scraping (which rotates TLS fingerprints). If Cloudflare blocks this, it falls back to CheerioCrawler with the configured proxy. This dual approach maximises success rates.
Does it capture product dosage and active ingredients? These details are typically in the product description text. The actor does not parse them into separate structured fields -- they remain in the description string.
Limitations
- Apotea.se uses Cloudflare Turnstile. Without residential proxies, success rates may be inconsistent.
- Product card extraction from listing pages may not capture all fields. The actor enqueues individual product pages for full detail extraction when card data is incomplete.
- Categories and product structures may change as Apotea updates their website.
- Not all products have EAN codes, ratings, or reviews in their JSON-LD data.
- The actor caps pagination at 50 pages as a safety measure to prevent infinite loops.
Related Swedish and European pharmacy scrapers
- Apotek Hjartat Scraper -- Sweden's second-largest pharmacy chain with 390+ physical stores
- Prisjakt Scraper -- Nordic price comparison across all product categories
- Ceneo Scraper -- Polish price comparison (for European health product pricing analysis)
Your feedback
Need specific health product categories, deeper product specification parsing, or price history tracking? Open an issue on GitHub or contact us through the Apify platform. We build what users need.