Hepsiburada Scraper - Products, Prices, Sellers & Stock
Pricing
from $1.00 / 1,000 products
Hepsiburada Scraper - Products, Prices, Sellers & Stock
Scrape Hepsiburada.com search results, category pages and product pages: prices, discounts, sellers, stock, ratings, review counts, barcodes and images. No browser. Price & stock monitoring: changes-only mode returns just new, changed and removed products.
Pricing
from $1.00 / 1,000 products
Rating
0.0
(0)
Developer
Atesen Software
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
21 hours ago
Last modified
Categories
Share
Hepsiburada Scraper - Products, Prices & Sellers
Scrape Hepsiburada.com, one of Turkey's biggest marketplaces. Give it search keywords, category URLs or product URLs and get clean JSON/CSV/Excel rows with prices, discounts, sellers, ratings, review counts, images and, if you want them, barcodes (GTIN), full category paths, stock and every seller's price. For price & stock monitoring, turn on changes only and schedule it: each run returns just the new, changed and removed products.
Fast HTTP scraper, no browser. It connects directly first and switches to a Turkish residential proxy only if Hepsiburada blocks it.
What you can use it for
- Price monitoring and competitor price tracking on Hepsiburada: schedule it daily with Changes only on and pay only for what changed.
- Seller / buybox analysis: find which merchants sell a product and at what price.
- Market research: brands, ratings and review counts per category.
- Product catalog and GTIN matching across Trendyol, Hepsiburada, Amazon.com.tr and others.
Input
| Field | Description |
|---|---|
searchQueries | Keywords, e.g. airfryer, iphone 15 |
startUrls | Search https://www.hepsiburada.com/ara?q=..., category https://www.hepsiburada.com/fritozler-c-22017 (filters and sorting in the URL are kept), or product ...-pm-HBC... URLs |
maxProductsPerSource | Products per keyword/URL (default 50, max 1,800 = 50 pages x 36) |
includeProductDetails | Also open each product page: barcode, category path, stock, all sellers and their prices |
skipSponsored | Drop sponsored (ad) listings |
proxyConfiguration | Optional; residential TR is used automatically if needed |
changesOnly | Off by default. On: save only new, changed and removed products since the previous run; unchanged ones are free (see Price & stock monitoring) |
monitorKey | Optional name of the watch list; empty = derived from the input |
{"searchQueries": ["airfryer"],"startUrls": ["https://www.hepsiburada.com/fritozler-c-22017"],"maxProductsPerSource": 100,"includeProductDetails": false}
Output
{"productId": "HBC00002TGQ5G","sku": "HBCV00002TGQ5H","name": "Luxell Lxaf-01 Fast Fryer Xxl 7.5 Litre Sıcak Hava Fritözü - Airfryer","brand": "Luxell","url": "https://www.hepsiburada.com/...-pm-HBC00002TGQ5G","price": 2999,"originalPrice": 2999,"discountRate": 0,"currency": "TRY","merchantName": "dtmexpress","isMultiSeller": true,"rating": 4.7,"reviewCount": 1092,"installmentText": "Peşin fiyatına 3 x 999 TL","isSponsored": false,"attributes": { "Renk": "Gri" },"imageUrl": "https://productimages.hepsiburada.net/s/777/1500-1500/110001839088941.jpg","position": 1,"sourceInput": "airfryer","detailsIncluded": false}
With includeProductDetails the row also contains barcode, categoryPath, categoryName, inStock, merchantCity, sellerCount and sellers[] (the buybox winner first, then other sellers: merchant name/id/city, price, original price, buybox order, free/fast shipping, fulfilled by Hepsiburada).
Status rows
The run never fails because of bad input. Problems come back as rows with type: "status" and are not charged:
| status | meaning |
|---|---|
invalid_input | No keywords or URLs given |
unsupported_url | Not a Hepsiburada search/category/product URL (store /magaza/ pages are not supported yet) |
no_results | The search/category has no products |
no_listing_data | The page has no product list |
not_found | Product or page does not exist (404) |
blocked / failed | Hepsiburada refused the request after retries |
The RUN_SUMMARY key-value record has counts, retries and whether the residential proxy was used.
Price & stock monitoring
Turn on Changes only (changesOnly: true) and schedule the Actor. Each run is compared with the previous run of the same input (or the same Monitor name, monitorKey), and only what changed is saved. Unchanged products are not saved and not charged; new and changed products cost the normal per-product price.
changeType | Meaning | Charged |
|---|---|---|
new | first time this product is seen (every product on the first run) | yes, as a normal product |
price_changed | price went up or down (previousPrice, priceChange, priceChangePercent) | yes |
unavailable | still listed but sold out — temporarily unavailable | yes |
back_in_stock | sold out last time, buyable again | yes |
removed | product is gone: its page returns 404 (removedReason: not_found), or it was missing from a fully crawled search or category (all pages read, fewer products than the limit) two runs in a row (not_listed) | free |
| unchanged | not saved | free |
Every changed row keeps all the normal product fields and adds changeType, a changes list (e.g. {"field": "price", "from": 1299, "to": 1149}), previousPrice, priceChange, priceChangePercent, previousInStock, previousSeenAt and firstSeenAt. Products are matched by Hepsiburada's stable product ID (productId, the HBC… code), so a renamed product is not reported as new. A product that could not be loaded in one run (timeout, block) is never reported as removed. The Changes view in the Output tab shows just these columns; the run summary (RUN_SUMMARY) counts new, changed, unchanged and removed products.
Schedule example — every morning, get only the price and stock changes:
{"startUrls": ["https://www.hepsiburada.com/fritozler-c-22017"],"maxProductsPerSource": 300,"changesOnly": true,"monitorKey": "airfryer-daily"}
Save the input as a task, then in Apify Console open Schedules → Create new, set cron 0 7 * * * (07:00 every day) and add the task. Connect a webhook, Google Sheets or Slack integration to receive only the changes. Keep the input the same between runs: a different input or monitor name starts a new watch list (all products new again).
Pricing
Pay per event, no monthly fee:
- $0.001 per product saved
- +$0.0015 per product when product details are included (product URLs always include details)
Status rows are free. Set a maximum cost per run and the scraper stops cleanly at it.
Tips
- Sorting and filters: set them on hepsiburada.com and paste the resulting URL into
startUrls. - Hepsiburada only exposes 50 pages per listing. To get more, split by sub-category or price filter.
- Duplicate products across sources are saved once.
Related
Disclaimer
Only public product data is collected. No personal data is collected. Use it responsibly and follow Hepsiburada's terms and applicable law.