Datart.cz Scraper: Prices, EAN & Price Monitoring
Pricing
from $0.85 / 1,000 products
Datart.cz Scraper: Prices, EAN & Price Monitoring
Scrape Datart.cz (Czech electronics e-shop) by category (with the website's filters), search, product code or EAN: price, real discount vs. 30-day low, discount codes, stock per store, EAN and specifications. Monitoring returns only changed or removed products. Unofficial.
Pricing
from $0.85 / 1,000 products
Rating
0.0
(0)
Developer
Tomáš Buchta
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Scrape products and prices from Datart.cz, one of the largest electronics e-shops in the Czech Republic. Use a category URL (also with the website's own filters and sorting), a category overview, product URLs, a search term, or your own list of Datart product codes or EANs. For each product you get the name, brand, current price, lowest price in the last 30 days and the real discount, availability online and in stores, delivery date, rating, labels and the bazaar condition. Optionally you also get the EAN (barcode), full technical specifications, the discount code and the price with it ("Cena s kódem"), the promotion end, energy class, warranty, description and documents, and the stock in each Datart store with the home delivery options.
Built for price monitoring: schedule it daily in monitoring mode and you get, and pay for, only products whose price or availability changed, plus (optionally) the products that disappeared and the ones that came back.
What's new
- October 2026: the website's filters, lookups, store stock, removed products and fast mode. All of it is optional; without the new inputs a run returns exactly what it did before (new fields are added at the end of each row, empty when not used).
- Website filters and sorting: paste a URL with filters set on Datart.cz (
…/filter/…), or use Sort by, Condition, Bazaar state, In stock in these stores and Parameter filters (any parameter of the filter panel). Datart.cz applies them itself, so pages contain only matching products. - Category overviews such as
https://www.datart.cz/tv-audio-video: their categories are read one after another. - Product codes and EANs: look up your own product list (
matchedBy); each EAN is confirmed on the product page. - More from the product page: discount code and the price with it, promotion label and end, energy class, warranty, description and documents (energy label sheet, manuals); filters Only with EAN, Energy classes, Min warranty (months) and Only with a discount code.
- Stock per store: every Datart store with pieces and pickup time, plus home delivery options with dates and prices.
- Monitoring: include removed products: products that disappeared since the previous run (
changeType: "removed") and the ones that came back ("reappeared"). - Fast mode for a small extra charge ($0.01 per 1 000 products): about 2x faster, back to the normal speed as soon as the website pushes back.
- Lighter next pages: the next listing pages come as the small JSON answer the website's own "next page" button gets (about 4x less data, the same products).
- Website filters and sorting: paste a URL with filters set on Datart.cz (
- October 2026: NAY.sk Scraper. Datart's Slovak sister shop (NAY) has its own scraper with the same output, EUR prices, stock in 54 stores and EAN/code lookups: NAY.sk Scraper.
- Correct decimal prices and large counts: prices with cents ("299,90") and product counts with a thousands space ("1 218") are read correctly.
- Steadier long runs: memory stays flat on runs with thousands of products (proxy connections are now closed when idle).
- Second attempt for rejected pages: a page the site rejects is asked once more 30 seconds later from the same IP, so short-lived blocks no longer leave gaps.
Why use this Datart scraper?
- 🏷️ Real discounts, not marketing.
isDiscountedanddiscountPercentcompare the price with the lowest price of the last 30 days, the way EU law (Omnibus) requires shops to show discounts. - 🔢 EAN for every product (optional). Match Datart products with other shops or your own catalogue.
- 📉 Monitoring mode and price drop alerts. Only new or changed products, with
previousPrice,priceChangeandpriceChangePercent. You can also ask for drops of at least X %. - 🏬 Store availability as numbers.
storeCount(stores with stock) anddeliveryDateas an ISO date, not just text. - 🎛️ The website's own filters and sorting. Any parameter of the filter panel (display technology, screen size… also ranges), condition (new or bazaar) and bazaar state, in stock in a given store, brands, price range and stock, applied by Datart.cz itself. Or just paste a URL with filters set on the website.
- 🏬 Stock in each Datart store (Praha, Brno, Ostrava…): pieces, unpacked pieces, pickup time, and the home delivery options with dates and prices.
- 🔢 Your own product list: Datart product codes or EANs, found with the website's search; the product page confirms each EAN.
- 🧮 Filters you don't pay for. In stock, discounted, price range, brands, name keywords, rating, labels, energy class, warranty, discount code.
- ⚡ Fast and light. No browser: one category page gives 22 products, and the next pages come as a small JSON answer. Optional fast mode about 2x faster for a tiny extra charge. Works out of the box with the default proxy setting.
What data can you get?
| Field | Example |
|---|---|
| Name, brand, product code | Televize TCL 98P8K, TCL, TCL98P8K |
| Price, lowest price in 30 days | 36 490 CZK, 39 990 CZK |
| Discounted, discount | true, 8 % |
| Availability | in_stock (Ihned k odeslání) |
| Stores with stock | 1 (Skladem v 1 prodejně) |
| Delivery date | 2026-10-10 |
| Rating, reviews | 4.9, 298 |
| Category path | TV, foto, audio, video › Televize |
| Labels | PRODLOUŽENÁ ZÁRUKA, + dárek |
| Condition, bazaar price from | new / likeNew (zánovní), 24 990 CZK |
| EAN (optional) | 5901292525859 |
| Specifications (optional) | Technologie displeje: LED, … |
| Price with code, code, promotion end (optional) | 25 066 CZK, 2269DATN15H, 2026-10-30 |
| Energy class, warranty, documents, description (optional) | F, 24 months, energy label sheet and manual (PDF) |
| Stock per store, delivery options (optional) | Praha 1 - Národní třída: 2 pieces, pickup 2026-10-20 09:30; Balíkovna na adresu: free, tomorrow |
| Search term or code that found it | searchQuery, matchedBy |
See the Output tab for all fields.
How to scrape Datart.cz
- Category: open Datart.cz, go to a category, e.g.
https://www.datart.cz/televize.html, and paste the URL into Category, product or search URLs. Category overviews (https://www.datart.cz/tv-audio-video) and product URLs work too. - Or search: type what you're looking for into Search, e.g.
lg oledorpračka bosch. Results come in the shop's relevance order. Or look up your own list in Product codes or EANs. You can combine all of these in one run. - Set Max products (and optionally Max products per search or URL), turn on Add EAN and specifications or Add stock per store if you need them, and add filters.
- Click Start and download the results as JSON, CSV or Excel, or use the API.
Tip: set filters and sorting on the website and paste the URL, e.g. https://www.datart.cz/televize.html/filter/v:-4:-835/o:3 (Samsung, cheapest first). The actor keeps them.
Use cases
Daily price monitoring of a category. Schedule it every morning:
{"startUrls": [{ "url": "https://www.datart.cz/televize.html" }],"maxItems": 0,"onlyNewOrChanged": true,"monitoringKey": "tv-daily"}
Discount alerts: products that got at least 10 % cheaper since the last run.
{"startUrls": [{ "url": "https://www.datart.cz/pracky.html" }],"onlyNewOrChanged": true,"minPriceDropPercent": 10}
Current deals in a category: discounted products with at least 15 % off the 30-day low.
{"startUrls": [{ "url": "https://www.datart.cz/notebooky.html" }],"onlyDiscounted": true,"minDiscountPercent": 15}
Cheapest Samsung OLED TVs in stock, filtered by Datart.cz itself:
{"startUrls": [{ "url": "https://www.datart.cz/televize.html" }],"brands": ["Samsung"],"parameterFilters": { "Technologie displeje": ["OLED"] },"onlyInStock": true,"sortBy": "cheapest","maxItems": 50}
Price check of your own product list by EAN (each EAN is confirmed on the product page):
{"eans": ["8806096768006", "8806096705766"],"productCodes": ["LGG43QNED87B"]}
Bazaar bargains: like new and unpacked products with the price of the new one:
{"startUrls": [{ "url": "https://www.datart.cz/televize.html" }],"productCondition": "bazaar","bazaarStates": ["likeNew", "unpacked"],"maxItems": 100}
Where to buy today: stock in Prague stores with discount codes:
{"startUrls": [{ "url": "https://www.datart.cz/mobilni-telefony.html" }],"availableInStores": ["Praha"],"includeDetails": true,"includeStoreAvailability": true,"maxItems": 50}
Assortment tracking: new, changed, removed and returning products of a category:
{"startUrls": [{ "url": "https://www.datart.cz/tv-audio-video" }],"maxItems": 0,"onlyNewOrChanged": true,"includeRemovedProducts": true,"monitoringKey": "tv-audio-assortment"}
Find products and their EAN by name:
{"searchQueries": ["lg oled 55", "samsung qled 65"],"maxItemsPerStartUrl": 10,"includeDetails": true}
Website filters (applied by the shop)
Sort by, Condition, Bazaar state, In stock in these stores and Parameter filters are taken from the filter panel of each listing, so Datart.cz sends only matching products. With any of them (or with Apply brand, price and stock filters on the website), Only these brands, Exclude brands, Min/Max price and Only products in stock go to the website too. Names that a listing doesn't have are reported in the log together with the options it has. The actor checks the products again. Without these inputs, the filters below work exactly as before, on every listing page.
Filters (you don't pay for filtered-out products)
| Filter | Example |
|---|---|
| Only products in stock | only products that ship now |
| Only discounted products, Min discount (%) | price below the 30-day low, at least 15 % off |
| Min price (CZK), Max price (CZK) | 10 000 – 30 000 |
| Only these brands, Exclude brands | LG, Samsung / Hisense |
| Name must contain, Name must not contain | OLED / rozbaleno |
| Min rating, Min number of reviews | 4.5, 10 |
| Only with labels | doprava zdarma |
| Exclude second-hand and opened products | skip "bazar" products |
| Only with EAN, Energy classes, Min warranty (months), Only with a discount code | need the product page, so they turn on Add EAN and specifications; places freed by filtered-out products are filled with the next products |
Product codes and EANs
Product codes (the end of the id field, e.g. LGGOLED55B65) and EANs are looked up with the website's search, one at a time with a short pause (up to 500 per run). A code must match exactly. An EAN is confirmed on the product page, so each EAN costs one product page read and the row always has the details. Codes that aren't found are listed in the status message.
Fast mode (small extra charge)
Normal speed: up to 120 requests per minute, 3 at a time (the speed the actor always had). Fast mode: up to 240 per minute, 6 at a time; it switches back to the normal speed for the rest of the run as soon as the website answers "too many requests", "service unavailable", "forbidden", shows a challenge or slows down. It waits when the website asks it to wait and never changes the IP address to get around a limit.
Safety limits in Advanced: Max pages per category (22 products per page) and Max pages per search. Description length limits the description. Proxy configuration defaults to Apify residential proxy in the Czech Republic (see the FAQ).
Monitoring mode explained
With Monitoring: only new or changed products each run compares products with the previous run that used the same Monitoring key. A product is returned as changeType: "new" or "updated" only if it is new or its price, availability, 30-day lowest price or discount status changed. New reviews, labels or delivery estimates don't count as a change. Monitoring: only price changes narrows it to price changes. Monitoring: min price drop (%) returns only price drops. For monitoring, use category URLs rather than search terms: categories have no search limits and give stable results.
Monitoring: include removed products also returns products of the previous run that are no longer listed, as changeType: "removed" with removedAt and the last known name, price and URL. When such a product comes back, it is "reappeared". Removed products are checked only after a run that read everything it was asked for (not when Max products, Max products per search or URL, a page limit or unread pages cut it short; the status message then says why). Use one Monitoring key per input.
How much does it cost to scrape Datart.cz?
You pay per saved product. Platform usage and the residential proxy are included. Filtered-out and unchanged products (in monitoring mode) are free.
| Plan | Per 1 000 products | + with the product page (details, lookups) | + Fast mode |
|---|---|---|---|
| FREE | $0.95 | +$0.95 | +$0.01 |
| BRONZE | $0.93 | +$0.93 | +$0.01 |
| SILVER | $0.90 | +$0.90 | +$0.01 |
| GOLD and higher | $0.85 | +$0.85 | +$0.01 |
A product saved with its product page (Add product page details, lookups by code or EAN) costs a little more, because the page goes through the residential proxy. Stock per store and removed-product rows don't change the price. See the Pricing tab for the current prices.
Typical runs:
| Scenario | Requests to Datart.cz | Typical time (normal / fast mode) |
|---|---|---|
| 100 products from a category | 5 listing pages | a few seconds |
| 1 000 products from categories | ~46 listing pages | under a minute |
| 100 products with EAN and specifications | 5 listing pages + 100 product pages | ~1 minute / ~30 s |
| 100 products with details and stock per store | 5 listing pages + 200 | ~2 minutes / ~1 minute |
| 100 EANs | ~200 (search + product page each) | ~6 minutes (lookups run one at a time) |
| 5 search terms, 2 pages each | 10 search pages | ~1 minute (searches are deliberately paced) |
Input example
{"searchQueries": ["lg oled"],"startUrls": [{ "url": "https://www.datart.cz/televize.html" }],"maxItems": 100,"includeDetails": false,"onlyInStock": false,"onlyNewOrChanged": false}
Output example
Real output (specifications and the specification summary shortened):
{"id": "datart:TCL98P8K","source": "datart.cz","url": "https://www.datart.cz/televize-tcl-98p8k","productCode": "TCL98P8K","internalId": "1908197","name": "Televize TCL 98P8K","brand": "TCL","category": "Televize","categoryPath": ["TV, foto, audio, video","Televize"],"price": 36490.0,"currency": "CZK","lowestPrice30Days": 39990.0,"isDiscounted": true,"isRefurbished": false,"newProductPrice": null,"discountPercent": 8.0,"availability": "in_stock","availabilityText": "Ihned k odeslání","storeAvailabilityText": "Skladem v 1 prodejně","storeCount": 1,"deliveryText": "u vás již 10. 10. 2026","deliveryDate": "2026-10-10","rating": null,"reviewCount": null,"labels": ["+ dárek"],"specSummary": "248 cm (98\") úhlopříčka • rozlišení: 4K Ultra HD • DVB-C, DVB-S2, DVB-T2 (H.265) • QLED • …","imageUrl": "https://image.datart.cz/foto/500/3/5/5/product_7264553.jpg","ean": "5901292525859","specifications": {"Technologie displeje": "LED","Úhlopříčka obrazovky": "248 cm (98\")","Rozlišení displeje": "4K Ultra HD"},"detailScraped": true,"sourceUrl": "https://www.datart.cz/televize.html","scrapedAt": "2026-10-09T12:41:58Z","position": 7,"changeType": null,"firstSeenAt": null,"previousPrice": null,"priceChange": null,"priceChangePercent": null}
Limitations
- Search reads at most 10 search terms per run and Max pages per search pages per term (24 products per page; default 2, at most 10). Searches run one after another with a short pause. For large or scheduled runs, use category URLs. Product codes and EANs use the search too, one at a time; if the site rejects the search, searches and lookups stop for the rest of the run.
- Website filters need the filter panel of the listing's first page, so a filtered listing costs one extra page. A filter value that a listing doesn't offer is reported in the log (with the options it has) and checked by the actor instead.
- A search for a brand only (e.g.
samsung) leads to the brand's page, which has no product list. The actor tells you so; use a more specific term (samsung televize) or a category URL. A search that leads straight to a category (e.g.televize) continues with that category, limited by Max pages per search. - Search results have no category in the listing; turn on Add EAN and specifications to get it from the product page.
- Reviews: only the average rating and the number of reviews, never review texts or reviewer names.
- Images are returned as URLs only. Product photos are copyrighted, so check the rights before you republish them.
- Second-hand and opened products ("bazar") show the price of a new product instead of the 30-day low: you get it as
newProductPrice(lowestPrice30Daysis null,isRefurbishedis true). deliveryDateis the estimated delivery date, or for products on order the expected restocking date ("očekáváme …").- If the site rejects a request, a rejected page is asked once more after 30 seconds from the same IP address and session (never from another IP), which recovers short-lived rejections. If it rejects a few requests in a row even so, the run stops and says so. Products whose page couldn't be read are returned with the listing data (
detailScraped: false).
For AI agents and API users
- Minimal input:
{"searchQueries": ["lg oled"], "maxItems": 20},{"startUrls": [{"url": "https://www.datart.cz/televize.html"}], "maxItems": 20}or{"eans": ["8806096768006"]}. - One row = one product = one charge (+ the
fast-modeevent when fast mode is on).includeDetails: trueadds 1 request per product (EAN, specifications, discount code, documents…),includeStoreAvailability: trueanother one; same price per product. - New fields are added after the original ones; a row always has every field (null or an empty list when not read).
- Listing pages: 22 products (category), 24 (search).
maxItemscounts saved products,maxItemsPerStartUrllimits each search term or URL. - Prices are in CZK including VAT.
availabilityis one ofin_stock(ships now),in_store_only(not shippable, but some stores have it),on_order,preorder,out_of_stock,unknown. - Monitoring state is kept per
monitoringKeybetween runs of the same user.
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("<username>/datart-scraper").call(run_input={"startUrls": [{"url": "https://www.datart.cz/televize.html"}],"maxItems": 100,})for product in client.dataset(run["defaultDatasetId"]).iterate_items():print(product["name"], product["price"], product["discountPercent"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('<username>/datart-scraper').call({ searchQueries: ['lg oled'], maxItems: 20 });const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.map((p) => `${p.name}: ${p.price} CZK`));
You can also connect the actor to Make, Zapier, n8n, Google Sheets, Slack or webhooks and schedule it in Apify Console.
Troubleshooting
| Status message | What to do |
|---|---|
Skipping unsupported URL | Use a Datart.cz category, category overview, product or search URL (filters and sorting set on the website are fine). |
unknown … (options here: …) | A website filter name or value that this listing doesn't have; pick one of the listed options. |
not found: … | The product code or EAN isn't on Datart.cz (codes must match exactly). |
fast mode: N products, then the normal speed because … | The website asked to slow down; the rest of the run used the normal speed (no fast-mode charge). |
removed products were not checked because … | The run didn't read everything (e.g. Max products was reached); raise the limits for monitoring runs. |
… could not be loaded | The category or product doesn't exist anymore; open the URL in your browser. |
… leads to the brand page … | Use a more specific search term or a category URL. |
Datart.cz is rejecting requests right now | Try again later. |
Saved 0 products (new or changed since last run) | Nothing changed since the previous monitoring run; that's expected. |
More Czech & Slovak e-shop scrapers
Compare prices across Czech and Slovak shops with the same output format (EAN for matching, monitoring mode):
- TSBOHEMIA.CZ Scraper: IT & electronics: prices, discount codes, EAN, site filters
- Planeo.cz Scraper: electronics & appliances: prices, discount codes, store pickup, EAN
- Smarty.cz Scraper: electronics: prices, coupons, cashback, EAN, price history, store stock
- BAUHAUS.cz Scraper: DIY & garden: prices, unit prices, stock in 9 stores, variants, EAN
- Mironet.cz Scraper: electronics: prices, store stock, delivery date, MPN, warranty, price history
- Alza Scraper (CZ, SK, HU, AT, DE): electronics: prices, coupons, ratings, reviews, pickup points, MPN
- NAY.sk Scraper (Slovakia): electronics: prices in EUR, discount codes, stock in 54 stores, EAN
- BAUHAUS.sk Scraper (Slovakia): DIY & garden: EUR prices, Bratislava store stock, variants, EAN
- Planeo.sk Scraper (Slovakia): electronics & appliances: EUR prices, discount codes, cashback, stock in 69 stores, EAN
- TSBOHEMIA.SK Scraper (Slovakia): IT & electronics: EUR prices, discount codes, EAN, lookups
- Smarty.sk Scraper (Slovakia): electronics: EUR prices, coupons, cashback, stock in Slovak stores, EAN
FAQ
Is it legal to scrape Datart.cz?
The actor collects only publicly available product data (prices, availability, stock per store, parameters, documents) and no personal data. It does not log in and never solves captchas or other challenges. Note that the site's robots.txt asks crawlers not to use its search pages; the Search field does use them (slowly and with limits), while category and product URLs don't. How you use the data is your responsibility. Use it for price monitoring and analysis, and don't republish the catalogue or photos. If unsure, consult a lawyer.
Do I need a proxy?
It's already set up. Datart.cz rejects requests from data-center IP addresses (including Apify's own servers), so the default Proxy configuration is Apify Proxy with residential IPs in the Czech Republic. The proxy is included in the price per product. Keep the default unless you have your own Czech proxies.
What does fast mode cost and when should I use it?
$0.01 per 1 000 products on top of the normal price, only for products saved at the fast speed. Use it for large categories, product page details, stock per store and long EAN lists, when the time matters. Without it the actor works as it always did.
Can I use it through the API?
Yes. See the Python and JavaScript examples above, or the API tab.
Something doesn't work
Open an issue in the Issues tab and include the input you used.
This is an unofficial tool, not affiliated with or endorsed by HP TRONIC Zlín, spol. s r.o., the operator of Datart.cz. It is also known as a Datart API, Datart price tracker or "hlídač cen Datart".