Joongna Scraper: Korea Secondhand Marketplace (중고나라) avatar

Joongna Scraper: Korea Secondhand Marketplace (중고나라)

Pricing

from $2.50 / 1,000 results

Go to Apify Store
Joongna Scraper: Korea Secondhand Marketplace (중고나라)

Joongna Scraper: Korea Secondhand Marketplace (중고나라)

Scrape Joongna (중고나라), Korea's largest secondhand marketplace: keyword search and category browse for product names, KRW prices, images, wish/chat counts, and sale status as clean JSON. Powered by Joongna's search API. No seller identity collected.

Pricing

from $2.50 / 1,000 results

Rating

0.0

(0)

Developer

Seok June Park

Seok June Park

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Share

Joongna Scraper 🛍️

Scrape secondhand listings from Joongna (중고나라) — Korea's largest-breadth peer-to-peer secondhand marketplace — as clean, structured JSON. Get product names, KRW prices, images, wishlist & chat engagement counts, free-shipping flags, and listing timestamps in one call.

Built for secondhand price research, resale & arbitrage sourcing, and Korean-market demand analysis.

Try it free. Apify's free plan includes $5 of monthly platform credit — roughly 2,000 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 Joongna's public search API (the same one that powers web.joongna.com), 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).
  • Category — browse the newest / most-relevant listings in a top-level Joongna category (e.g. Women's fashion, Digital/Electronics, Star goods).

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

Privacy first: this actor collects item data only. It never emits seller nicknames, IDs, store handles, profiles, or manner-temperature. Item, price, image, and public engagement counts only.


Input

FieldTypeDescription
modestring"search" or "category".
querystringSearch mode: the keyword to search for. Required in search mode.
categorySeqintegerCategory mode: the Joongna top-level category id (required).
orderstring"score" (recommended), "date" (newest), "price_asc", or "price_dsc". Default score.
maxItemsintegerMax listings to collect. Default 100.
proxyConfigurationobjectProxy settings. Apify RESIDENTIAL recommended for large runs.

Common category IDs

IDCategory
1Women's fashion
2Men's fashion
6Beauty
8Digital / Electronics
10Sports / Leisure
21Star goods (K-pop)

Input example

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

Output

Each listing is one dataset record. Prices are in KRW (Korean won).

{
"source": "joongna",
"listing_id": "229960164",
"name": "나이키 두들 스니커즈 화이트 32",
"price_krw": 190000,
"status": "selling",
"category": null,
"region": null,
"free_shipping": false,
"wish_count": 8,
"chat_count": 4,
"url": "https://web.joongna.com/product/229960164",
"image_url": "https://img2.joongna.com/media/original/2026/06/24/1782273653522xD4_01ech.jpg",
"listed_at": "2026-07-09T13:23:45+09:00",
"scraped_at": "2026-07-09T13:23:54+09:00"
}

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

FieldMeaning
sourceAlways "joongna".
listing_idJoongna listing id (seq).
nameListing title.
price_krwAsking price (KRW).
statusSale status. The search feed only returns on-sale items, so this is effectively always "selling" (see Known limitations).
categoryAlways null from the search feed — see Known limitations.
regionAlways null from the search feed — see Known limitations.
free_shippingWhether the listing ships free (parcel fee is 0).
wish_countNumber of users who wishlisted the listing. A real demand signal.
chat_countNumber of buyer chats opened on the listing. A real demand signal.
urlListing page URL.
image_urlFirst product image (clean original asset).
listed_atListing sort/refresh time (KST, UTC+9).
scraped_atISO-8601 timestamp (KST, UTC+9).

Known limitations (honest)

  • region is not available from Joongna's search feed — the API returns an empty location for listing rows, so this field is always null. It is kept for schema compatibility only.
  • category name is not returned on search rows. Use category mode with a categorySeq to scope results to a category instead of reading it off each row.
  • status does not vary in practice: the search API only returns on-sale listings, so status is always "selling". Reserved/sold listings are not exposed by this feed.

These fields are documented, not billed on — pricing reflects only the fields that reliably populate (name, price, image, wish/chat counts, free shipping, timestamps).


Use cases

  • Secondhand price research — track asking prices for sneakers, electronics, luxury goods, and K-pop goods across Korea's broadest secondhand marketplace.
  • Resale & arbitrage sourcing — surface underpriced or high-demand listings (sort by newest or price, rank by wish_count / chat_count).
  • Demand analysis — measure listing volume and engagement (wishlists, chats) for a product or category over time.
  • AI agents & datasets — feed structured secondhand data into pricing models, sourcing dashboards, or LLM agents.

❓ FAQ

Is it legal to scrape this data? This actor collects only public, non-personal catalog data — the same listings any visitor to web.joongna.com sees 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.50 per 1,000 results (launch pricing) + a few cents of platform usage. Example: a 500-result daily pull costs about $1.25/day. Apify's free $5 monthly credit covers ~2,000 results.

Do I need to configure proxies? No — the default settings work out of the box. For large runs or if you see repeated HTTP 403/429 errors, optionally enable Apify Proxy with the RESIDENTIAL group (see the proxy recommendation 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? No seller data of any kind (privacy by design), and no region or per-row category name — Joongna's search feed doesn't return them, so they are null. Only on-sale listings are exposed, so status is effectively always "selling".


🇰🇷 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, store ids, profiles, or manner-temperature. Item, price, image, and public engagement data only.
  • Requests are rate-limited: one page at a time with a ≥ 500 ms delay between requests, to stay gentle on Joongna's servers.
  • You are responsible for using the data in line with Joongna's terms of service and applicable law.

⚠️ Proxy recommendation

Joongna may block datacenter IPs or high request volumes. For reliable runs — especially at higher maxItems — enable Apify Proxy with the RESIDENTIAL group. 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. If you see repeated API HTTP 403/429 errors in the log, switch on residential proxy.


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.