MediaMarkt Germany Product Scraper
Pricing
from $1.20 / 1,000 product scrapeds
MediaMarkt Germany Product Scraper
Scrape MediaMarkt.de products from search queries or URLs, with optional product details and customer reviews.
Pricing
from $1.20 / 1,000 product scrapeds
Rating
0.0
(0)
Developer
Data Scrapers
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
Share
MediaMarkt Germany Product Scraper creates a structured dataset of products collected from MediaMarkt.de. Each dataset item can include the product id, name, brand, EAN, price, currency, rating, review count, stock flag, category, and source query. Query the source with a search phrase or a MediaMarkt search or product URL. Control the result limit with maxItems, and optionally request product details or customer reviews. Retrieve records through the Apify Dataset API or export them as JSON, CSV, Excel, XML, or another supported format.
Dataset at a glance
| Property | Value |
|---|---|
| Source | mediamarkt.de |
| Record unit | One product |
| Input methods | searchQueries or startUrls |
| Main identifiers | productId, url |
| Delivery | Apify Dataset and API |
| Export formats | JSON, CSV, Excel, XML |
| Update model | Fresh records per Actor run |
| Pricing | $1.50 per 1,000 products, detail pages, and reviews on the Free plan. Platform usage is not billed separately. |
Coverage and available records
searchQueries are MediaMarkt search phrases. startUrls can be search result URLs or product URLs. maxItems of 0 does not add an item cap. includeProductDetails loads the product page and charges product-details when that payload is saved. includeReviews collects up to maxReviews reviews per product and charges product-reviews once per saved review. Search rows still include price, brand, stock, and rating when those values are on the search card.
Marketplace offers from sellers other than MediaMarkt, and store-level inventory by city, are not separate records. A refurbished flag is isRefurbishedAvailable when the page exposes it.
Data dictionary
| Field | Type | Nullable | Description | Example |
|---|---|---|---|---|
| productId | string | no | MediaMarkt product id. Deduplication key. | 3071596 |
| name | string | yes | Product name | APPLE AirPods 5 + wireless charging Case |
| brand | string | yes | Brand | APPLE |
| ean | string | yes | EAN | 0195951378718 |
| url | string | yes | Product page | https://www.mediamarkt.de/de/product/_apple-airpods-5-wireless-charging-case-3071596.html |
| imageUrl | string | yes | Primary image | https://assets.mmsrg.com/isr/166325/c1/-/ASSET_MMS_183535376 |
| price | number | yes | Current price, EUR | 169 |
| originalPrice | number | yes | Price before discount | null |
| discountPercent | number | yes | Discount percent | null |
| currency | string | yes | Currency code | EUR |
| rating | number | yes | Average rating | 0.0 |
| reviewCount | number | yes | Review count on the card | 0 |
| inStock | boolean | yes | Stock flag from the card | true |
| availability | string | yes | Availability code | RELEASE_PRODUCT |
| category | string | yes | Category label | Bluetooth Kopfhörer Open Ear |
| isRefurbishedAvailable | boolean | yes | Refurbished offer exists | false |
| sourceType | string | yes | search or url | search |
| sourceQuery | string | yes | Query or URL that produced the row | AirPods |
Example dataset record
{"productId": "3071596","name": "APPLE AirPods 5 + wireless charging Case, Open-ear Kopfhörer Bluetooth White","brand": "APPLE","ean": "0195951378718","url": "https://www.mediamarkt.de/de/product/_apple-airpods-5-wireless-charging-case-3071596.html","imageUrl": "https://assets.mmsrg.com/isr/166325/c1/-/ASSET_MMS_183535376","price": 169,"originalPrice": null,"discountPercent": null,"currency": "EUR","rating": 0.0,"reviewCount": 0,"inStock": true,"availability": "RELEASE_PRODUCT","category": "Bluetooth Kopfhörer Open Ear","isRefurbishedAvailable": false,"sourceType": "search","sourceQuery": "AirPods"}
This row came from the search query AirPods.
Query and input reference
| Input | Type | Required | Default | Accepted values | Description |
|---|---|---|---|---|---|
| searchQueries | array | no | empty | Search phrases | MediaMarkt search text. |
| startUrls | array | no | empty | Search or product URLs | Direct MediaMarkt URLs. |
| maxItems | integer | no | 0 | Integer | Maximum products saved. 0 does not add a cap. |
| includeProductDetails | boolean | no | false | true, false | Fetch product pages. Charges product-details. |
| includeReviews | boolean | no | false | true, false | Fetch reviews. Charges product-reviews. |
| maxReviews | integer | no | 10 | Integer | Reviews saved per product. |
| detailConcurrency | integer | no | 5 | Integer | Parallel detail fetches. |
| proxyConfiguration | object | no | Apify residential | Apify proxy input | Proxy used for MediaMarkt requests. |
Minimal request:
{"searchQueries": ["AirPods"],"maxItems": 5}
Retrieve the data through the API
Start the Actor with JSON input, wait for the run, then read the default dataset. Other languages are on the Actor API tab.
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("datascrapers/mediamarkt-de-scraper").call(run_input={"searchQueries": ["AirPods"],"maxItems": 5,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["productId"], item.get("price"))
Data quality and record handling
Use productId as the deduplication key. price is a number in euros. originalPrice and discountPercent are null when the card has no discount. Review text is attached only when includeReviews is on, and each saved review is its own product-reviews event. A product page that fails can still leave the search-card row in the dataset.
Pricing and cost examples
| Event | Free | Bronze | Silver | Gold |
|---|---|---|---|---|
| dataset-item | $1.50 | $1.40 | $1.30 | $1.20 |
| product-details | $1.50 | $1.40 | $1.30 | $1.20 |
| product-reviews | $1.50 | $1.40 | $1.30 | $1.20 |
Prices are per 1,000 events. Platinum and Diamond use the Gold price. Platform usage is not billed on top of these events. A Free-plan run that saves 1,000 products costs $1.50. Details add $1.50 per 1,000 product pages. Reviews add $1.50 per 1,000 reviews.
Limitations and responsible data use
MediaMarkt can change search cards, require a proxy, or omit EAN and rating on some products. Stock is the flag returned for that request, not a promise of later availability. Use the data under MediaMarkt's terms and applicable privacy rules.
Dataset questions
Can I pass a product URL?
Yes. Put the product URL in startUrls. Search phrases are not required for that run.
How are reviews billed?
Each review saved while includeReviews is on is one product-reviews event, up to maxReviews per product.
Which field should I store as the key?
Store productId. It is the numeric id in the product URL.
Related datasets from Data Scrapers
- Subito.it Scraper for Italian classified ads.
- Cdiscount Scraper for French retail products.
- Carrefour Scraper for Carrefour products.
- Calvin Klein Scraper for Calvin Klein products.
- Chargefinder Scraper for public charging stations.
Data Scrapers support
Questions about this dataset: stardustspotlight@gmail.com
