Interpark Ticket Scraper — Korean Concert & Musical Rankings avatar

Interpark Ticket Scraper — Korean Concert & Musical Rankings

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Interpark Ticket Scraper — Korean Concert & Musical Rankings

Interpark Ticket Scraper — Korean Concert & Musical Rankings

Scrape the live performance rankings from Interpark Tickets (인터파크 티켓), Korea's #1 ticketing site: rank, show title, venue, run dates, genre, poster image and detail URL as clean JSON. Musicals, K-pop concerts, plays, classical, exhibitions and more. No seat/price data, no PII.

Pricing

from $4.00 / 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

17 days ago

Last modified

Features

Limited permissions

Share

Interpark Ticket Scraper — Korean Concert & Musical Rankings 🎫

Scrape the live performance rankings from Interpark Tickets (인터파크 티켓) — Korea's #1 ticketing platform, now operating as NOL 티켓 — as clean, structured JSON. Get the rank, show title, venue, run dates, genre, poster image and detail-page URL for every ranked musical, K-pop concert, play, classical show, exhibition and more, in one run.

The fastest way to see what's hot in Korean live entertainment right now: a cross-genre popularity board you can snapshot daily for concert-tour tracking, resale analysis, promoter research, or as a live data source for AI agents.

Try it free. Apify's free plan includes $5 of monthly platform credit — at $4.00 / 1,000 results that's roughly 1,250 show records from this actor, no credit card required. Set your input, click Start, and export JSON/CSV/Excel.


What it does

This actor reads ranking data straight from Interpark Tickets' own public ranking feed — since the October 2026 move to the NOL brand, the JSON feed behind nol.yanolja.com/ticket/display/ranking (the same endpoint the website calls as you switch category tabs) — so results are fast and complete — no fragile full-page scraping, no headless browser. You can scrape:

  • All genres at once (default) — every category's ranking, interleaved into one cross-genre leaderboard (each genre's #1 first, then every #2, and so on), or
  • A single genre — e.g. musicals, concerts, plays, classical, exhibitions.

Rankings are available for three windows — daily, weekly, and monthly — so you can track today's movers or a longer trend.

Interpark exposes eight ranking categories:

Genre codeKoreanEnglish
MUSICAL뮤지컬Musical
CONCERT콘서트Concert (incl. K-pop)
DRAMA연극Play
CLASSIC클래식/무용Classical & Dance
EXHIBIT전시/행사Exhibition & Events
KIDS아동/가족Kids & Family
SPORTS스포츠Sports
LEISURE레저/캠핑Leisure & Camping (NOL no longer shows this tab; the feed currently returns an empty ranking for it — see limitations)

Why Interpark? Interpark Tickets is the dominant ticketing site in Korea for concerts, musicals and performances. Its public ranking board is the single best snapshot of live-entertainment demand in the country — which tours are selling, which musicals are trending, what's climbing week over week. This actor turns that board into a structured dataset you can filter, chart, and pipe into your own tools.


Input

FieldTypeDescription
genrestringWhich ranking to scrape. all (default) collects every category and interleaves them. Or one category — a code (MUSICAL, CONCERT, DRAMA, CLASSIC, EXHIBIT, KIDS, SPORTS, LEISURE) or a Korean name (뮤지컬, 콘서트, 연극, 클래식/무용, 전시/행사, 아동/가족, 스포츠, 레저/캠핑).
periodstringRanking window: daily, weekly, or monthly. Default daily.
maxItemsintegerMax show records to collect. Default 50, max 5000.
proxyConfigurationobjectProxy settings (see below). Defaults to a direct connection.

Input example

{
"genre": "CONCERT",
"period": "weekly",
"maxItems": 50
}
{
"genre": "뮤지컬",
"period": "daily",
"maxItems": 100
}

Output

Each ranked show is one dataset record. rank is the show's position within its genre ranking (ties can occur — the site shows them). period_start / period_end are the show's run dates (YYYY-MM-DD). booking_percent is Interpark's own booking-share popularity metric (예매율) — the signal behind the ranking, not a ticket price. title, venue and genre are kept as the original Korean strings.

{
"source": "interpark",
"show_id": "26012259",
"rank": 1,
"rank_previous": 37,
"title": "뮤지컬 〈렛미플라이〉",
"genre": "뮤지컬",
"genre_code": "musical",
"venue": "두산아트센터 연강홀",
"period_start": "2026-10-06",
"period_end": "2027-01-03",
"age_rating": null,
"booking_percent": 12.7,
"url": "https://nol.yanolja.com/ticket/products/26012259",
"image_url": "https://ticketimage.interpark.com/Play/image/large/26/26012259_p.gif",
"scraped_at": "2026-10-26T14:16:11+09:00"
}

A full 50-item sample from a real run (default input, 2026-10-26) is in samples/sample-output.json.

FieldMeaning
sourceAlways "interpark".
show_idInterpark goods code — a stable per-show ID (GoodsCode).
rankPosition in the genre ranking (1 = top). Ties can repeat a rank.
rank_previousThe show's rank in the previous snapshot, for movement analysis; null if it's new / wasn't ranked before. The monthly chart carries no previous rank, so it is null on every monthly row.
titleShow title, original Korean (authoritative).
genreGenre in Korean, as Interpark labels it (e.g. 뮤지컬, 콘서트).
genre_codeLower-case English genre code (e.g. musical, concert).
venueVenue / hall name (public place name), else null.
period_startRun start date (YYYY-MM-DD), else null.
period_endRun end date (YYYY-MM-DD), else null.
age_ratingViewing age rating. Currently always null: the NOL ranking feed (since 2026-10-21) no longer carries it. Kept in the schema so existing integrations don't break.
booking_percentBooking-share popularity metric (예매율). A ranking signal, not a price. null if absent.
urlShow detail-page URL on NOL (https://nol.yanolja.com/ticket/products/<show_id>), the link the site itself uses.
image_urlPoster image URL, else null.
scraped_atISO-8601 timestamp (KST, UTC+9).

The core fields — rank, title, genre, venue, period_start, period_end, booking_percent, url, image_url — populated on 50/50 records in the 2026-10-26 live test (default input). rank_previous is best-effort (47/50 on the daily chart — null for shows new to the chart, and always null on the monthly chart). age_rating is null — see above. Critical fields rank and title are always present.


Use cases

  • K-pop concert & tour tracking — snapshot the CONCERT ranking daily to see which tours and artists are selling, when new dates enter the chart, and how they climb (rank vs rank_previous).
  • Ticket resale & demand analysis — use rank, rank_previous and booking_percent as a live demand signal for the secondary market: spot fast-rising, high-booking shows early.
  • Promoters & venue research — see which genres, venues and run windows dominate the rankings; benchmark your own show against the board and track competitors' positions over time.
  • AI agents & datasets — feed a structured, always-fresh "what's hot in Korean live entertainment" feed into dashboards, trend models, or LLM agents.

❓ FAQ

Is it legal to scrape this data? This actor collects only public, non-personal ranking data — the same ranking board any visitor sees on Interpark / NOL 티켓 (nol.yanolja.com) without logging in. No personal data is collected (a venue is a public hall name, not a person). You are responsible for how you use the data; see the legality note below.

What does it cost in practice? $4.00 per 1,000 results + a few cents of platform usage. Example: a 50-result daily "all genres" pull costs about $0.20/day. Apify's free $5 monthly credit covers ~1,250 results.

Do I need to configure proxies? No — the default settings work out of the box. NOL serves its ranking feed without a bot wall, so the actor runs on a direct connection. If, on the Apify platform, every board comes back as a well-formed but empty ranking (the signature of a Korea-only geo-gate), the actor retries once through Apify Proxy (RESIDENTIAL, country KR) by itself. For very heavy pulls you can enable Apify Proxy yourself.

How fresh is the data? Every run reads the live Interpark ranking at run time. Schedule the actor for recurring snapshots (e.g. a daily chart capture) and diff rank against rank_previous to track movement.

What is NOT included? No ticket prices and no seat maps / availability — those live behind per-show booking flows that require authenticated, per-show requests, and are deliberately out of scope (see limitations). This actor is a ranking/metadata feed, not a seat/price scraper.


🤖 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/interpark-ticket-scraper",
"headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }
}
}
}

Your agent can then pull Korea's live performance rankings 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:

  • popply-scraper — Korean pop-up store & event listings. Pair it with this actor for a fuller picture of Korea's live experiences and events.
  • korea-trend-feed — trending keywords and rankings across Korean platforms. Combine with performance rankings to correlate buzz with ticket demand.

Browse all: apify.com/kdatafactory


Rate limiting & legality

  • The actor collects only public, non-authenticated data. It never logs in and never touches private or booking endpoints.
  • No personal data is collected — only show, venue and ranking information. No ticket prices and no seat/availability data are fetched.
  • Requests are rate-limited: one page at a time with a ≥ 1 s delay between requests, to stay gentle on the source's servers. The default input makes 8 requests.
  • You are responsible for using the data in line with Interpark's terms of service and applicable law.

Known limitations (honesty note)

  • No prices, no seats. This actor deliberately does not collect ticket prices or seat maps / availability. Those require per-show, often authenticated booking requests that are out of scope. booking_percent is a popularity/ranking metric (예매율), not a price.
  • rank_previous is best-effort. It reflects the previous snapshot's rank where the source provides one, is null for shows that are new to the chart, and is null on every row of the monthly chart (the source publishes no previous monthly rank). It is not billed as a guaranteed field.
  • age_rating is currently always null. The NOL ranking feed that replaced the old Interpark feed on 2026-10-21 does not include a viewing-age rating.
  • LEISURE is currently empty. NOL still lists the 레저/캠핑 genre in its ranking-genre tree but shows no tab for it, and the feed returns an empty ranking. With genre = all the other seven boards are returned; with genre = LEISURE the run ends successfully with 0 rows and says why.
  • Failures say what was observed. A run that collects nothing reports what the source actually returned (e.g. "HTTP 404 — the feed path no longer exists; a proxy will not help", "HTTP 200 with an empty body — request-shape rejection", "HTTP 403/429 — a real block; backoff or a proxy can help"), not a generic error.
  • Ranks can tie. Interpark's ranking legitimately assigns the same rank to multiple shows; the actor returns ranks as shown rather than forcing them unique.
  • Genre is a Korean string (with a genre_code convenience field). For genre = all, records are interleaved across categories in round-robin rank order — so with a small maxItems you get each genre's top entries first, not a single global 1..N list. Each record still carries its own per-genre rank.
  • Titles, venues and genres are Korean strings — they are not translated.

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.