Bunjang Scraper: Korean Resale & Secondhand Market (번개장터) avatar

Bunjang Scraper: Korean Resale & Secondhand Market (번개장터)

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Bunjang Scraper: Korean Resale & Secondhand Market (번개장터)

Bunjang Scraper: Korean Resale & Secondhand Market (번개장터)

Scrape Bunjang (번개장터), Korea's largest secondhand & resell marketplace: keyword search and category browse — product names, KRW prices, condition, sale status, and images as clean JSON. Built on Bunjang's JSON API. No seller identity. For resale price research & sneaker/luxury resell tracking.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Seok June Park

Seok June Park

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Bunjang Scraper 🛒

Scrape secondhand & resell listings from Bunjang (번개장터) — Korea's largest peer-to-peer resale marketplace — as clean, structured JSON. Get product names, KRW prices, sale status, images, favorite counts, and last-update timestamps in one call.

Built for resale price research, sneaker & luxury resell tracking, and secondhand market analysis.

Try it free. Apify's free plan includes $5 of monthly platform credit — roughly 2,500 results from this actor, no credit card required. Set your input, click Start, and export JSON/CSV/Excel.


What it does

This actor pulls listing data directly from Bunjang's public search/browse JSON API (the same one that powers bunjang.co.kr), so results are fast and complete — no fragile HTML scraping in the happy path. Two modes:

  • Search — every listing matching a keyword (e.g. nike, 아이폰, jordan 1). Optionally narrow to a single category.
  • Category — browse the newest / most-relevant listings in a Bunjang category (e.g. Shoes, Bags, Digital).

Four sort orders are supported: relevance/popularity, newest, price low→high, and price high→low.

Privacy first: this actor collects item data only. It never emits seller nicknames, IDs, profiles, or shop handles. Region is coarsened to a public province + city/district label — never a neighborhood or a person.


Input

FieldTypeDescription
modestring"search" or "category".
querystringSearch mode: the keyword to search for. Required in search mode.
categoryIdstringCategory mode: the Bunjang category id (required). Optional in search mode to narrow results.
orderstring"score" (relevance), "date" (newest), "price_asc", or "price_desc". Default score.
maxItemsintegerMax listings to collect. Default 100.
proxyConfigurationobjectProxy settings. Apify RESIDENTIAL recommended for large runs.

Common category IDs

IDCategory
310Women's clothing
320Men's clothing
405Shoes
430Bags / Wallets
421Watches
600Digital
700Sports / Leisure
910Star goods (K-pop)

Input example

{
"mode": "search",
"query": "나이키",
"order": "date",
"maxItems": 100
}
{
"mode": "category",
"categoryId": "405",
"order": "score",
"maxItems": 200
}

Output

Each listing is one dataset record. Prices are in KRW (Korean won). status is one of selling / reserved / sold.

{
"source": "bunjang",
"product_id": "416892841",
"name": "나이키 x 트래비스 스캇 에어맥스 1 캑터스 브라운 275",
"price_krw": 209000,
"status": "selling",
"condition": null,
"category": null,
"region": null,
"free_shipping": null,
"is_ad": false,
"favorite_count": 12,
"url": "https://m.bunjang.co.kr/products/416892841",
"image_url": "https://media.bunjang.co.kr/product/416892841_1_1783126918_w400.jpg",
"listed_at": "2026-07-09T09:12:55+09:00",
"scraped_at": "2026-07-09T09:13:00+09:00"
}

Field availability notice (2026-10-08). Bunjang rebuilt its web app onto a new search API, and the new search payload no longer returns a per-item condition, category id, location or free-shipping flag. condition, category, region and free_shipping are therefore always null today. The keys are kept in every row so existing integrations and CSV/Excel column layouts keep working unchanged, and the actor still reads them opportunistically — they will repopulate on their own if Bunjang restores them. Every other field is unaffected.

A full 40-item sample from a real run is in samples/sample-output.json.

FieldMeaning
sourceAlways "bunjang".
product_idBunjang listing id (pid).
nameListing title.
price_krwAsking price (KRW).
statusselling, reserved, or sold.
conditionnew or used. Currently always null — Bunjang's new search API no longer returns it.
categoryBunjang category id. Currently always null — no longer returned per item by Bunjang's new search API. (You can still filter by category via the categoryId input.)
regionCoarse public area (province + city/district). Currently always null — no longer returned by Bunjang's new search API. No neighborhood-level or personal location is ever emitted.
free_shippingWhether the seller offers free shipping. Currently always null — no longer returned by Bunjang's new search API.
is_adtrue for a sponsored/promoted listing, false for an organic one. Bunjang mixes ads into every feed — filter on this to get organic-only results.
favorite_countNumber of users who favorited the listing.
urlMobile listing page URL.
image_urlFirst product image (resolved thumbnail).
listed_atLast update time of the listing (KST, UTC+9).
scraped_atISO-8601 timestamp (KST, UTC+9).

Use cases

  • Resale price research — track asking prices for sneakers, luxury goods, electronics, and K-pop goods across the Korean resale market.
  • Sneaker & luxury resell tracking — monitor supply and pricing for hyped drops (Jordan, Travis Scott, designer bags) as new listings appear.
  • Secondhand market analysis — measure listing volume, price distribution, and favorite/engagement counts for a product category over time. (Per-item condition and region are no longer published by Bunjang — see the field availability notice above.)
  • AI agents & datasets — feed structured resale data into pricing models, arbitrage dashboards, or LLM agents.

❓ FAQ

Is it legal to scrape this data? This actor collects only public, non-personal listing data — the same listings any visitor sees on Bunjang without logging in. No personal data is collected (no seller nicknames, IDs, or profiles). You are responsible for how you use the data; see the legality note below.

What does it cost in practice? $2.00 per 1,000 results + a few cents of platform usage. Example: a 500-result daily pull costs about $1.00/day. Apify's free $5 monthly credit covers ~2,500 results.

Do I need to configure proxies? No — the default settings work out of the box. For large runs or high maxItems, enabling Apify Proxy with the RESIDENTIAL group is recommended as optional scaling advice (see the proxy note below).

How fresh is the data? Every run scrapes the live site at run time. Schedule the actor for recurring snapshots.

What is NOT included? Seller information of any kind — nicknames, IDs, profiles, shop handles — is never emitted, and neither are Bunjang's per-impression ad tracking blobs. region, when Bunjang publishes it at all, is deliberately coarsened to a public province + city/district label and never carries a neighborhood or a person (it is null today — see the field availability notice). Only the first product image is included per listing.


🤖 Use with AI agents (MCP)

Call this Actor as a tool from Claude or any MCP-compatible AI agent — no glue code. Point your MCP client at Apify's server, scoped to this Actor:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=kdatafactory/bunjang-scraper",
"headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }
}
}
}

Your agent can then pull Bunjang resale listings on demand — no scraping code in your app. Grab a free token from Apify → Integrations.

🇰🇷 More Korean data actors

This actor is part of a suite of Korean-platform scrapers by the same maintainer:

Browse all: apify.com/kdatafactory


Rate limiting & legality

  • The actor collects only public, non-authenticated data. It never logs in and never touches private endpoints.
  • No personal data is collected — no seller nicknames, IDs, profiles, or shop handles, and no ad tracking identifiers. region is deliberately coarsened to a public province/district label and never carries a neighborhood or a person.
  • Requests are rate-limited: one page at a time with a ≥ 500 ms delay between requests, to stay gentle on Bunjang's servers.
  • You are responsible for using the data in line with Bunjang's terms of service and applicable law.

⚠️ Proxy recommendation

Bunjang may rate-limit high request volumes. The actor automatically uses the proxy configuration you provide (via proxyConfiguration in input) and, if a proxy tunnel fails, falls back to a direct connection rather than hanging.

A proxy only helps for some failures — check the status code in the log before paying for residential traffic:

Log lineWhat it meansDoes a proxy help?
API HTTP 429Rate limitedYes — residential spreads requests across IPs. Lowering maxItems also works.
API HTTP 403 / 401Access refused (IP reputation, or auth now required)Maybe — this is the one case that can be a real IP block.
API HTTP 404The endpoint path movedNo. Not a block. The actor needs a code update; residential traffic is wasted here.
API HTTP 400Query parameters rejectedNo. Server rejected the request, not the caller.
API HTTP 5xxBunjang-side server errorNo. Retry later.

The actor's own error message reports which of these it actually observed, so you do not have to guess.


If this actor saves you time, a rating on the Store page helps a solo maintainer a lot. Found an issue? Open it in the Issues tab — I respond fast.