Kream Product Search Scraper
Pricing
from $3.00 / 1,000 product listeds
Kream Product Search Scraper
Scrape product data from Kream (kream.co.kr), Korea's top sneaker resale marketplace. Extract listings with price, brand, wish/review counts, and release info. Supports 9 sort options, quick delivery and below retail filters, and detail scraping for model numbers, sizes, and price history.
Pricing
from $3.00 / 1,000 product listeds
Rating
0.0
(0)
Developer

Juyeop Park
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Search and scrape product data from Kream — Korea's leading sneaker and fashion resale marketplace.
Extract product listings with price, brand, size availability, wish/review counts, and release info. Supports 9 sort options, common search filters, and detail page scraping for comprehensive product data.
Features
- Keyword Search — Search up to 10 keywords per run
- Sort Options — 9 sort modes including popularity, lowest ask, discount rate, and more
- Common Filters — Quick delivery, below retail price, exclude sold out
- Detail Scraping — Optionally visit each product page for model number, sizes, release info
- Anti-Detection — Residential proxy support with realistic browser fingerprinting
- Structured Output — Export to JSON, CSV, or Excel
Input
| Field | Type | Default | Description |
|---|---|---|---|
keywords | string[] | required | Search terms (max 10 per run) |
sort | enum | popularity | Sort order for results |
quickDelivery | boolean | false | Show only quick delivery items |
belowRetail | boolean | false | Show only items below retail price |
excludeSoldOut | boolean | false | Hide sold out items |
maxResults | integer | 50 | Max products per keyword (1-500) |
scrapeDetails | boolean | false | Visit detail pages for extra data |
proxy | object | Apify RESIDENTIAL | Proxy configuration |
requestHandlerTimeoutSecs | integer | 300 | Timeout per keyword (60-600s) |
Sort Options
| Value | Description |
|---|---|
popularity | Most popular (default) |
lowest_ask | Lowest ask price first |
highest_bid | Highest bid price first |
wish | Most wishlisted |
style_tags | Most reviewed |
date_released | Latest release date |
discount_rate | Highest discount rate |
premium_high | Highest premium over retail |
premium_low | Lowest premium over retail |
Example Input
{"keywords": ["Nike Dunk Low", "New Balance 530"],"sort": "popularity","quickDelivery": false,"belowRetail": false,"excludeSoldOut": true,"maxResults": 50,"scrapeDetails": true}
Output
Each product is stored as one row in the dataset.
Basic Fields (from search listing)
| Field | Type | Description |
|---|---|---|
productId | string | Kream product ID |
productName | string | Product name (Korean) |
brand | string | Brand name |
price | integer | null | Current lowest ask price (KRW) |
imageUrl | string | null | Product image URL |
productUrl | string | Kream product page URL |
wishCount | integer | null | Number of wishes |
reviewCount | integer | null | Number of reviews |
Detail Fields (when scrapeDetails: true)
| Field | Type | Description |
|---|---|---|
productNameEn | string | null | Product name (English) |
modelNumber | string | null | Model/style number |
releaseDate | string | null | Release date |
releasePrice | integer | null | Original retail price (KRW) |
sizes | array | null | Available sizes with prices |
priceHistory | array | null | Recent price history |
Example Output
{"productId": "28029","productName": "나이키 덩크 로우 레트로 블랙","productNameEn": "Nike Dunk Low Retro Black","brand": "Nike","price": 90000,"releasePrice": 129000,"modelNumber": "DD1391-100","releaseDate": "2021-01-14","imageUrl": "https://kream-phinf.pstatic.net/.../product.png","productUrl": "https://kream.co.kr/products/28029","wishCount": 108000,"reviewCount": 15000,"sizes": [{ "size": "250", "price": null },{ "size": "260", "price": null },{ "size": "270", "price": null }],"priceHistory": null}
Usage Tips
- Fast runs: Set
scrapeDetails: falseand lowmaxResultsfor quick listing data - Comprehensive data: Enable
scrapeDetails: trueto get model numbers, sizes, and release info (slower) - Price monitoring: Use
sort: "lowest_ask"withexcludeSoldOut: trueto find the best deals - Discount hunting: Combine
sort: "discount_rate"withbelowRetail: true - Proxy: Residential proxy is recommended for reliable results. Kream may block datacenter IPs
Pricing
This Actor uses Pay Per Event pricing. You only pay for what you use.
| Event | Price | Description |
|---|---|---|
actor-start | $0.01 | Charged once per Actor run |
product-listed | $0.003 | Charged per product extracted from search results |
product-detail-scraped | $0.005 | Charged per product detail page visited (only when scrapeDetails: true) |
Cost Examples
| Scenario | Settings | Estimated Cost |
|---|---|---|
| Quick search (50 products) | maxResults=50, scrapeDetails=false | ~$0.16 |
| Detailed search (50 products) | maxResults=50, scrapeDetails=true | ~$0.41 |
| Bulk search (500 products) | maxResults=500, scrapeDetails=false | ~$1.51 |
| Bulk detailed (500 products) | maxResults=500, scrapeDetails=true | ~$4.01 |
| Multi-keyword (3 x 100) | 3 keywords, maxResults=100 | ~$0.91 |
Cost Per 1,000 Products
| Mode | Cost |
|---|---|
| Listing only | ~$3 |
| Listing + Detail pages | ~$8 |
You can set a maximum cost limit when starting a run to control your budget. The Actor will stop gracefully when the limit is reached.
Performance
- ~20-30 seconds per keyword (listing only)
- ~60-120 seconds per keyword (with detail scraping, depends on
maxResults) - Proxy usage: ~1-5 MB per keyword depending on scroll depth
Technical Details
- Built with TypeScript, Puppeteer, and the Apify SDK
- Uses URL-based search navigation (no form interaction)
- Infinite scroll handling with IntersectionObserver sentinel detection
- Automatic retry on empty results (up to 2 retries per keyword)
- Graceful partial extraction on timeout or error
Limitations
- Kream's DOM structure may change without notice, which can affect extraction accuracy
- Some products may have limited detail data depending on Kream's server-driven UI
- Rate limiting may apply with high-volume requests even with residential proxies