
TikTok Shop Scraper
scrape.ly/store/shelfbright/tiktok-shop-scraperE-commerceSocial media
1 monthly user

Scrape hepsiburada.com products with prices, discounts, sellers, ratings, stock and delivery from searches, categories, brands and stores. Add specs, variants, reviews and Q&A. No login needed.
Scrape products from hepsiburada.com, one of Turkey's largest online marketplaces: prices, discounts, sellers, ratings, stock and delivery from any search, category, brand or store page. Add full product details (description, specifications, variants, barcode, all sellers), customer reviews and questions with seller answers when you need them. No login, no cookies, results in seconds.
laptop or kablosuz kulaklık) and/or paste hepsiburada.com links (search, category, brand, store or product pages).| Field | What it does |
|---|---|
searchQueries | Words to search on hepsiburada.com, one query per line. |
startUrls | hepsiburada.com links: /ara?q=..., categories (...-c-98), brands, stores (/magaza/...), products (...-p-HBCV..., ...-pm-HBC...). Filters and sorting in a link are kept. |
maxItems | Products per query or link (default 20, 0 = all). |
minPrice / maxPrice | Price range in Turkish lira. |
minRating | 1, 2, 3, 4 or 4.5 stars and up. |
sortBy | relevance, price_asc, price_desc, best_selling, most_reviewed, top_rated, highest_discount, newest. |
gender | male, female, unisex, boys, girls, kids. |
fastDeliveryOnly, discountedOnly, officialSellersOnly, womenEntrepreneursOnly | Shopping filters. |
includeDetails | Open each product page for full details. |
maximizeCoverage | Split big searches into price bands to go past ~1,760 products. |
includeReviews, maxReviewsPerProduct, reviewSort | Customer reviews per product. |
includeQuestions, maxQuestionsPerProduct | Customer questions with seller answers. |
{
"searchQueries": ["laptop"],
"startUrls": ["https://www.hepsiburada.com/apple-airpods-4-nesil-mxp63tu-a-pm-HBC0000700VEO"],
"maxItems": 20,
"minPrice": 20000,
"maxPrice": 40000,
"sortBy": "best_selling",
"includeDetails": true,
"includeReviews": true,
"maxReviewsPerProduct": 10
}
Every row has a type: product, review or question. The dataset has ready-made views for products, product details, reviews and questions.
| Field | Description |
|---|---|
name, brand, url, sku, productId | Product identity and link. |
price, originalPrice, discountRate, lowestPriceWithCoupons, priceText, currency | Price in TRY, list price, discount and the lowest price with coupons or segment offers. |
rating, reviewCount, reviewsWithMediaCount | Customer rating summary. |
sellerName, sellerId, isMultiSeller | The seller that wins the buy box. |
inStock, jetDelivery, shipmentDays, installmentCount | Availability, fast delivery, shipping time and installments. |
category, productType, image, images, color, badges | Category, product type, photos and campaign labels. |
searchQuery, position, page, totalResults | Where the product was found. |
With details: description, specifications, variants, barcode, categoryPath, sellerCity, sellerRating, otherSellers, sellerCount, lowestSellerPrice, shippingCost | Full product page data. |
Reviews: rating, text, createdAt, author (masked by hepsiburada), verifiedPurchase, likes, images, featureRatings, sellerName | One row per review. |
Questions: question, firstAnswer, answers[] (answer, seller, date), answerCount, createdAt | One row per question. |
A product row with details (trimmed):
{
"type": "product",
"productId": "HBC0000FC0KGH",
"sku": "HBCV0000FC0KHB",
"url": "https://www.hepsiburada.com/lenovo-ideapad-slim-3-amd-ryzen-7-170-16gb-512gb-ssd-freedos-15-3-tasinabilir-bilgisayar-83k700pstr-p-HBCV0000FC0KHB",
"name": "Lenovo IdeaPad Slim 3 AMD Ryzen 7 170 16GB 512GB SSD Freedos 15.3\" Taşınabilir Bilgisayar 83K700PSTR",
"brand": "Lenovo",
"price": 38999,
"originalPrice": 38999,
"discountRate": 0,
"lowestPriceWithCoupons": 35999,
"currency": "TRY",
"installmentCount": 12,
"rating": 4.8,
"reviewCount": 36,
"category": "Dizüstü Bilgisayar Laptop",
"image": "https://productimages.hepsiburada.net/s/777/800/110001806741453.jpg",
"sellerName": "Hepsiburada",
"inStock": true,
"searchQuery": "laptop",
"position": 2,
"barcode": "0199274827854",
"categoryPath": "Bilgisayar Sistemleri ve Ekipmanları > Bilgisayarlar > Dizüstü Bilgisayar Laptop",
"specifications": [{ "group": null, "name": "Ekran Panel Tipi", "value": "FHD" }],
"variants": [{ "sku": "HBCV0000FC0KHB", "price": 38999, "inStock": true, "options": { "SSD Kapasitesi": "512 GB", "Ram (Sistem Belleği)": "16 GB" } }],
"otherSellers": [{ "sellerName": "PROVİA MARKT", "price": 38950, "sellerRating": 9.5, "sellerCity": "İSTANBUL" }],
"sellerCount": 3,
"lowestSellerPrice": 38950,
"shippingCost": 44.9,
"detailsScraped": true
}
A review row (trimmed):
{
"type": "review",
"productName": "Apple Airpods Pro 3 Kulakiçi TWS Bluetooth Kulaklık Aktif Gürültü Önleme Suya Dayanıklı",
"sku": "HBCV00009Z66PB",
"rating": 5,
"text": "Cihazın anc özelliği daha öncede kullandığım diğer nesillere göre fark edilir şekilde artmış...",
"createdAt": "2025-12-15T00:27:50.9841256+00:00",
"author": "M**************",
"verifiedPurchase": true,
"likes": 59,
"sellerName": "Hepsiburada",
"featureRatings": [{ "feature": "Ses Kalitesi", "rating": 5 }]
}
The run's key-value store also holds an OUTPUT summary: rows per source, how many products hepsiburada reports for each search, skipped inputs and any requests that failed.
Pay per result, plus a small platform usage fee:
Platform usage (residential traffic and compute) is billed on top and is small because hepsiburada pages travel compressed: in our test runs a 36-product listing page used about 0.3 MB and a product page about 0.12 MB.
Examples:
Is it legal to scrape hepsiburada.com? The scraper only reads public pages that anyone can open without an account. Reviewer names are already masked by hepsiburada. You are responsible for how you use the data, including personal data and copyright rules in your country.
Do I need a login or a proxy? No login. A proxy is needed because hepsiburada refuses datacenter IPs; the default uses residential exits in Turkey, and the traffic is small.
How many results can I get? hepsiburada shows at most 49 pages (about 1,760 products) per search or filter combination. Turn on "Collect more matching listings" to split large searches into price bands and collect more.
Why is a field empty? Some products simply have no value for it, for example no discount, no reviews or no coupon price. Detail fields (description, specifications, variants, other sellers) are only filled with "Add full product details" or for product links.
Why do I see the same product only once across my queries? Products are deduplicated by SKU within a run, so you never pay twice for the same product.
Can I schedule it or use the API? Yes. Save your input as a task, schedule it, and read results through the API or the integrations.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
searchQueriesarrayOptionalSearch queries
Words to search on hepsiburada.com, one per line (Turkish words work best, e.g. "laptop", "kablosuz kulaklık", "beyzbol şapkası"). Each query is scraped separately.
startUrlsarrayOptionalHepsiburada links
hepsiburada.com links: search results (/ara?q=...), category pages (...-c-98), brand pages, store pages (/magaza/...) or product pages (...-p-HBCV... / ...-pm-HBC...). Filters and sorting already in a link are kept.
maxItemsintegerOptionaldefault 20Max products per query or link
How many products to save for each search query or listing link. 0 means all that hepsiburada shows (up to about 1,760 per search, more with "Collect more matching listings").
Applied to searches and listing links (not to single product links).
minPriceintegerOptionalMinimum price (TRY)
Only products from this price up, in Turkish lira.
maxPriceintegerOptionalMaximum price (TRY)
Only products up to this price, in Turkish lira.
minRatingenumOptionalMinimum customer rating
Only products rated at least this many stars.
sortByenumOptionaldefault "relevance"Sort by
Order of the search results.
genderarrayOptionalGender or age group
Only products for these groups (fashion, shoes, accessories and other categories that have this filter).
fastDeliveryOnlybooleanOptionaldefault falseFast delivery only
Only products marked for fast delivery.
discountedOnlybooleanOptionaldefault falseDiscounted only
Only products that currently show a discount.
officialSellersOnlybooleanOptionaldefault falseAuthorized or official sellers only
Only products sold by authorized or official sellers.
womenEntrepreneursOnlybooleanOptionaldefault falseWomen entrepreneur products only
Only products hepsiburada marks as women entrepreneur products.
includeDetailsbooleanOptionaldefault falseAdd full product details
Open each product page for the description, specifications, all variants, barcode, category path, seller city and rating, other sellers and shipping cost. Charged as an extra event per product.
maximizeCoveragebooleanOptionaldefault falseCollect more matching listings
hepsiburada shows at most about 1,760 products per search. Turn this on to split big searches into price bands and collect past that limit.
includeReviewsbooleanOptionaldefault falseAdd reviews
Save customer reviews of each product as separate rows (type = review).
maxReviewsPerProductintegerOptionaldefault 20Max reviews per product
0 means all reviews.
reviewSortenumOptionaldefault "default"Review order
Which reviews come first.
includeQuestionsbooleanOptionaldefault falseAdd questions and answers
Save customer questions with the sellers' answers as separate rows (type = question).
maxQuestionsPerProductintegerOptionaldefault 20Max questions per product
0 means all questions.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["RESIDENTIA…Proxy configuration
hepsiburada.com refuses datacenter exits, so residential exits in Turkey are the default (pages are small, so traffic stays cheap). Residential exits are pinned to Turkey unless you pick a country; with datacenter the scraper switches to residential after a few refusals.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| image | any | Image |
| name | any | Product |
| url | any | URL |
| brand | any | Brand |
| price | any | Price (TRY) |
| originalPrice | any | Original price |
| discountRate | any | Discount % |
| rating | any | Rating |
| reviewCount | any | Reviews |
| sellerName | any | Seller |
| category | any | Category |
| inStock | any | In stock |
| jetDelivery | any | Fast delivery |
| sku | any | SKU |
| searchQuery | any | Query |
| position | any | Position |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Product | One product from a search, category, brand or store page (name, brand, price, discount, seller, rating, stock, delivery, images). | $0.0008 |
| Product details add-on | Added to a product when its page is opened for full details: description, specifications, variants, barcode, category path, seller city and rating, other sellers, shipping cost. Product links always include it. | $0.0006 |
| Review or question | One customer review (stars, text, date, photos, seller) or one customer question with the sellers' answers. | $0.00055 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('shelfbright/hepsiburada-scraper').call({
"searchQueries": [
"laptop"
],
"maxItems": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"RESIDENTIAL"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run shelfbright/hepsiburada-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=shelfbright/hepsiburada-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Search hepsiburada.com and open each product page for specs, variants, barcode and other sellers.
A category link with price, rating and sort filters.
3 products from a search with their 5 newest reviews and 3 questions each.
Paste product links to get the full product page.
Products from a hepsiburada store (mağaza) link.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.