# 벅스 차트·곡·앨범 스크래퍼 (Bugs Music Chart API) – 좋아요·크레딧 (`k-data-lab/bugs-scraper`) Actor

Get Bugs Music (벅스) chart data as JSON or CSV, no login: Korean music and K-pop realtime, daily and weekly TOP100, 29 genre charts, album charts, past charts by date and hour, song search, likes and songwriter credits. Kpop chart API for analysts and AI agents. $0.25/1K songs, 500 free monthly.

- **URL**: https://apify.com/k-data-lab/bugs-scraper.md
- **Developed by:** [K-Data Lab](https://apify.com/k-data-lab) (community)
- **Categories:** Social media, AI
- **Features:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.15 / 1,000 곡·차트 항목 (song / chart row)s

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Bugs Music Chart Scraper API (벅스) – K-pop TOP100, Credits

**Get Bugs Music (벅스) chart data as JSON, CSV or Excel, no login needed.** This unofficial Bugs Music chart API returns Korean music and K-pop charts: the realtime, daily and weekly TOP100, 29 genre charts, album charts and past charts by date and hour. Add song likes and songwriter credits with one switch. Click **Start** and the prefilled input returns the current realtime TOP100 in about 5 seconds.

| | |
|---|---|
| 💰 **Price** | $0.25 per 1,000 songs or chart rows, +$0.20 per 1,000 song details, $1 per 1,000 albums or artists |
| 🎁 **Free every month** | 500 songs, 100 song details, 20 albums and 20 artists |
| 🚀 **Your first run** | The prefilled run uses 100 of your 500 free songs, so you pay only the $0.005 start fee. Apify's Free plan gives you $5 of credit a month, which covers it. |
| ⚡ **Speed** | Realtime TOP100 in about 5 seconds, TOP100 with song details in about 30 seconds |
| 🔓 **Login** | None. Only public pages that anyone can see on Bugs without signing in. |

> Unofficial tool. Not affiliated with, endorsed or sponsored by Bugs / NHN Bugs.

**Default run output** (realtime TOP100, 2026.11.01 10:00 chart, first 3 songs):

| rank | title | artist | rankStatus | chartName |
|---|---|---|---|---|
| 1 | NEON | A2O, A2O LITE | same | 실시간 TOP100 |
| 2 | 꿈꾸던 어른이 되었나요? | 머무르 | same | 실시간 TOP100 |
| 3 | 미장센 | 에픽하이 (EPIK HIGH), 다비치 | same | 실시간 TOP100 |

Every song also has `songId`, `albumId`, `artists` (all credited artists with IDs), `rankChange`, `imageUrl` and `songUrl`. See the [full output example](#-출력-예시).

#### 🧭 What do you want to get?

| You want | Input |
|---|---|
| Top 10 songs on Bugs right now | `{"charts":["realtime"],"maxResults":10}` |
| Korean songs only (realtime K-pop chart) | `{"charts":["realtime"],"genres":["kpop"]}` |
| Daily ballad and idol charts with likes and credits | `{"charts":["day"],"genres":["nb","nid"],"includeSongDetails":true}` |
| Weekly album chart | `{"charts":["albumWeek"]}` |
| The realtime chart of a past date and hour | `{"charts":["realtime"],"chartDate":"2026-01-01","chartHour":9}` |
| An artist's latest songs | `{"artists":["80049126"],"artistSongOrder":"latest"}` |
| Song search | `{"searchKeywords":["aespa"],"maxResults":20}` |

Need the same chart on other Korean platforms? Use the [Korean Music Chart API](https://apify.com/k-data-lab/korean-music-chart-scraper), which merges Melon, Genie, Bugs, FLO and VIBE into one table.

#### 🇰🇷 한국어 안내

벅스(Bugs) **실시간 · 일간 · 주간 TOP100**, **장르 차트 29개**(발라드·댄스/팝·아이돌·랩/힙합·성인가요·OST·J-POP 등), **앨범 차트**, **지난 차트(날짜·시각 지정)**, **곡 검색**, **곡 상세(좋아요 · 발매일 · 장르 · 작사·작곡·편곡 · 전체 참여 정보 · FLAC 음질)**, **앨범**, \*\*아티스트(곡 목록 포함)\*\*를 JSON · CSV · Excel로 받아 보세요. 로그인도, 브라우저도 필요 없습니다.

가격은 곡·차트 항목 $0.25 / 1,000개 (약 350원)이고, 매달 곡 500개 · 곡 상세 100개 · 앨범 20개 · 아티스트 20명은 무료입니다. 기본값 실행은 곡 100개라 무료 분량 안에 들어가고, 실행 시작 요금 $0.005 (약 7원)만 나갑니다.

#### 🎵 무엇을 가져오나요?

- **곡 차트**: 실시간 TOP100(매시 갱신), 일간 TOP100, 주간 TOP100.
- **실시간 장르**: 전체 · 국내 전체(kpop) · 해외 전체(pop).
- **일간·주간 장르 차트 29개**: 국내 발라드, 댄스/팝, 포크/어쿠스틱, 아이돌, 랩/힙합, 알앤비/소울, 일렉트로닉, 락/메탈, 재즈, 인디, 성인가요(트로트) / 해외 팝, 랩/힙합, 알앤비/소울, 일렉트로닉, 락, 메탈, 재즈 / OST, 클래식, 뉴에이지, J-POP, 월드뮤직, 국악, CCM, 어린이, 태교, 캐롤.
- **앨범 차트**: 앨범 일간·주간 TOP100 (발매일, 앨범 유형, 대표곡 ID 포함).
- **지난 차트**: 원하는 날의 일간 차트, 원하는 주의 주간 차트, **원하는 날·시각의 실시간 차트**(예: 2026-01-01 09시).
- **순위 변동**: `rankChange`(+상승 / -하락 / 0), `rankStatus`(up · down · same · new · hot), `rankNote`(NEW, HOT, 3일 …).
- **곡 상세** (선택): **좋아요 수**, 발매일, 장르·스타일, 재생시간, **음질(FLAC 16bit/24bit)**, 작사·작곡·편곡자, **전체 참여 정보**(보컬·피처링·코러스 등 역할별, 아티스트 ID 포함).
- **곡 검색**: 검색어로 곡 찾기 (벅스 검색 순서), 검색어당 최대 2,000곡.
- **앨범**: 유형(정규·EP·싱글·OST), 발매일, 장르·스타일, 유통사, 기획사, 좋아요 수, 수록곡 전체(디스크·트랙 번호, 타이틀곡 표시), 앨범 소개.
- **아티스트**: 유형(솔로·그룹), 장르, 데뷔, 국적, **멤버 목록**, 좋아요 수, 그리고 발매곡 목록 (인기순·최신순·가나다순).

#### 💡 왜 이 액터인가요?

- **벅스 전용, 모든 공개 차트**: 실시간 TOP100만 주는 통합 도구와 달리 일간·주간, 장르 29개, 앨범 차트, 지난 날짜·시각 차트까지 다 됩니다.
- **곡마다 좋아요·크레딧**: 좋아요 수, 작사·작곡·편곡자, 보컬·피처링까지 역할별 참여 정보를 아티스트 ID와 함께. 저작권·A\&R 분석에 바로 쓸 수 있습니다.
- **참여 아티스트 전원**: 피처링·콜라보 곡도 `artists`에 아티스트 전원과 ID가 들어 있습니다 (화면에 첫 이름만 보이는 경우도 포함).
- **가장 저렴**: $0.25 / 1,000곡. 다른 K-pop 차트 도구($2 / 1,000곡)보다 8배 저렴하고 매달 무료 분량도 있습니다.
- **정확한 날짜**: 벅스는 없는 날짜를 넣으면 다른 날 차트를 보여 줍니다. 이 액터는 그걸 그대로 붙이지 않고 "벅스가 ○○ 차트를 대신 보여 줌"이라고 알려 줍니다.
- **빠르고 안정적**: 벅스 페이지를 직접 읽고 브라우저를 띄우지 않습니다. 요청이 거절되면 자동으로 Apify 프록시로 다시 시도하고, 빈 차트가 오면 다시 받아옵니다.

#### 📥 입력 예시

실시간 TOP100 (기본값):

```json
{ "charts": ["realtime"] }
```

일간·주간 발라드·아이돌·성인가요 차트, 곡 상세(좋아요·크레딧) 포함:

```json
{
  "charts": ["day", "week"],
  "genres": ["nb", "nid", "ntrot"],
  "includeSongDetails": true
}
```

지난 차트 (2026년 1월 1일 일간·주간, 그날 09시 실시간, 앨범 일간):

```json
{ "charts": ["day", "week", "realtime", "albumDay"], "chartDate": "2026-01-01", "chartHour": 9 }
```

검색 · 곡 · 앨범 · 아티스트:

```json
{
  "searchKeywords": ["아이유", "에스파"],
  "maxResults": 100,
  "songs": ["https://music.bugs.co.kr/track/6511885"],
  "albums": ["4156473"],
  "artists": ["80049126"],
  "maxSongsPerArtist": 50,
  "artistSongOrder": "latest"
}
```

| 입력 | 설명 |
|---|---|
| `charts` | `realtime` · `day` · `week`(곡 TOP100) · `albumDay` · `albumWeek`(앨범 TOP100) 중 여러 개 |
| `genres` | 비우면 전체. 실시간: `kpop`(국내) · `pop`(해외). 일간·주간: `nb` 발라드, `ndp` 댄스/팝, `nid` 아이돌, `nrh` 랩/힙합, `ntrot` 성인가요, `nost` OST, `nfpop` 해외 팝, `njpop` J-POP … (29개) |
| `chartDate` | 지난 차트 날짜 YYYY-MM-DD (주간은 그 날짜가 속한 주) |
| `chartHour` | 지난 실시간 차트 시각 0~23 (비우면 23시) |
| `maxResults` | 차트·검색어마다 최대 결과 수 (기본 100, 차트는 100위까지) |
| `includeSongDetails` | 곡 상세 추가: 좋아요·발매일·장르·크레딧·음질 (곡 상세 이벤트 요금) |
| `searchKeywords` | 곡 검색어 |
| `songs`, `albums`, `artists` | 벅스 ID 또는 music.bugs.co.kr 링크 |
| `maxSongsPerArtist`, `artistSongOrder` | 아티스트 곡 목록 수(0 = 정보만)와 정렬(인기순·최신순·가나다순) |

#### 📤 출력 예시

차트 곡 + 곡 상세 (실제 실행 결과, 크레딧 일부 생략):

```json
{
  "type": "song",
  "source": "chart",
  "chartType": "day",
  "chartName": "일간 TOP100",
  "genreCode": "nb",
  "genreName": "국내 발라드",
  "chartPeriod": "2026.10.30",
  "chartDate": "2026-10-30",
  "rank": 1,
  "rankChange": null,
  "rankStatus": "duration",
  "rankNote": "18일",
  "songId": "6511847",
  "title": "미장센",
  "artist": "에픽하이 (EPIK HIGH), 다비치",
  "artistId": "65269",
  "artists": [{ "artistId": "65269", "name": "에픽하이 (EPIK HIGH)" }, { "artistId": "80041466", "name": "다비치" }],
  "albumId": "4156457",
  "albumTitle": "미장센",
  "hasMusicVideo": true,
  "isAdult": false,
  "imageUrl": "https://image.bugsm.co.kr/album/images/500/41564/4156457.jpg",
  "songUrl": "https://music.bugs.co.kr/track/6511847",
  "detailsScraped": true,
  "releaseDate": "2026-10-13",
  "genre": "발라드, 랩/힙합",
  "style": "발라드, 힙합",
  "duration": "02:58",
  "durationSeconds": 178,
  "audioQuality": "FLAC 16bit, 24bit",
  "lyricists": [{ "artistId": "33545", "name": "TABLO" }, { "artistId": "4111", "name": "MITHRA JIN" }, { "artistId": "80257301", "name": "Kim Hanjoo" }],
  "composers": [{ "artistId": "80257301", "name": "Kim Hanjoo" }, { "artistId": "33545", "name": "TABLO" }, { "artistId": "4111", "name": "MITHRA JIN" }],
  "arrangers": [{ "artistId": "80257301", "name": "Kim Hanjoo" }],
  "credits": [{ "role": "보컬", "artistId": "65269", "name": "에픽하이 (EPIK HIGH)" }, { "role": "작곡", "artistId": "80257301", "name": "Kim Hanjoo" }, "…"],
  "likes": 509,
  "scrapedAt": "2026-10-31T03:09:17+00:00"
}
```

앨범 차트 · 앨범 · 아티스트 (요약):

```json
{ "type": "album", "source": "chart", "chartName": "앨범 일간 TOP100", "rank": 1, "albumId": "4157224",
  "title": "Sequence 02: Attraction", "artist": "AND2BLE (앤더블)", "releaseDate": "2026-10-27", "albumType": "EP(미니)", "topSongId": "6513932" }
{ "type": "album", "albumId": "4156473", "title": "NEON", "artist": "A2O, A2O LITE", "albumType": "싱글", "releaseDate": "2026-10-13",
  "genre": "댄스/팝", "style": "댄스 팝", "distributor": "지니뮤직, STONE MUSIC", "agency": "A2O Entertainment", "likes": 149,
  "trackCount": 1, "tracks": [{ "discNo": 1, "trackNo": 1, "songId": "6511885", "title": "NEON", "isTitleTrack": true }] }
{ "type": "artist", "artistId": "80049126", "name": "아이유(IU)", "activityType": "솔로 (여성)", "genre": "발라드, 댄스/팝",
  "debutYear": 2008, "nationality": "대한민국", "likes": 70853 }
```

실행이 끝나면 키-값 저장소의 `RUN_SUMMARY`에 입력별 결과(OK · NOT_FOUND · SKIPPED · NO_RESULTS), 이번 달 남은 무료 분량, 요청 수가 남습니다.

#### 💰 가격 (Pay per event)

| 이벤트 | 가격 | 무료 (매달) |
|---|---|---|
| 곡·차트 항목 (차트·검색·아티스트 목록의 곡 1개, 앨범 차트의 앨범 1개) | $0.25 / 1,000개 (약 350원) | 500개 |
| 곡 상세 (좋아요·발매일·장르·크레딧·음질 추가) | +$0.20 / 1,000곡 (약 280원) | 100곡 |
| 앨범 (앨범 ID로 조회) | $1 / 1,000개 (약 1,400원) | 20개 |
| 아티스트 | $1 / 1,000명 (약 1,400원) | 20명 |
| 실행 시작 | $0.005 / 실행 (약 7원) | – |

예: 실시간 TOP100을 매시간 한 달(720번) 모으면 곡 72,000개 ≈ $18 + 시작 $3.6. 일간 TOP100을 매일 모으면 한 달 ≈ $0.75 + 시작 $0.15.
Apify 등급(Bronze · Silver · Gold)에 따라 곡 가격은 최대 $0.15 / 1,000곡까지 내려갑니다. 실행 옵션의 **최대 비용**(Max cost)을 정하면 그 금액에서 깨끗하게 멈춥니다.

#### 🎯 이런 분께 좋아요

- **기획사·A\&R**: 신곡의 실시간 순위와 장르 차트 위치, 좋아요 증가를 매시간 추적.
- **저작권·퍼블리싱**: 작사·작곡·편곡자별로 차트 진입곡을 모아 크레딧 분석.
- **음악 데이터 분석·연구**: 지난 일간·주간 차트와 시간대별 실시간 차트로 장르·아티스트 트렌드, 역주행 분석.
- **멜론·지니·바이브·FLO와 함께 비교**: [멜론](https://apify.com/k-data-lab/melon-scraper), [지니](https://apify.com/k-data-lab/genie-scraper), [바이브](https://apify.com/k-data-lab/vibe-scraper), [FLO](https://apify.com/k-data-lab/flo-scraper) 차트 스크래퍼와 같은 시각에 돌려 플랫폼별 순위를 비교 (올킬 체크). 다섯 액터 모두 `rank` · `title` · `artist` · `songId` 필드 이름이 같아 합치기 쉽습니다.
- **AI 에이전트·챗봇**: "지금 벅스 1위 곡은?" 같은 질문에 최신 데이터로 답하기 (Apify MCP).

#### 🔌 API · 연동

```bash
curl -X POST "https://api.apify.com/v2/acts/k-data-lab~bugs-scraper/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{"charts":["realtime"],"maxResults":10}'
```

```python
from apify_client import ApifyClient

client = ApifyClient("<YOUR_TOKEN>")
run = client.actor("k-data-lab/bugs-scraper").call(run_input={"charts": ["day"], "includeSongDetails": True})
for song in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(song["rank"], song["title"], song["artist"], song.get("likes"))
```

Google Sheets, Make, n8n, Zapier, Slack 연동과 웹훅도 Apify 콘솔의 **Integrations** 탭에서 바로 연결됩니다. 매시간·매일 수집은 **Schedules**에서 설정하세요.

#### 🤖 AI 에이전트에서 쓰기 (Use it from AI agents · MCP)

Claude, ChatGPT, Cursor, VS Code, n8n에 [Apify MCP 서버](https://mcp.apify.com)로 `bugs-scraper` 도구를 바로 붙일 수 있어요. 에이전트가 입력 스키마를 읽고 이 액터를 실행해 벅스 차트·곡·앨범 데이터를 받아 옵니다. (Give your AI agent a ready-made `bugs-scraper` tool: it reads the input schema, runs this actor and gets the dataset back.)

- 이 액터만 (this actor only): `https://mcp.apify.com?tools=actors,docs,k-data-lab/bugs-scraper`
- K-pop 차트 묶음 (Melon·Genie·Bugs·FLO·VIBE·통합 차트): `https://mcp.apify.com?tools=actors,docs,k-data-lab/melon-scraper,k-data-lab/genie-scraper,k-data-lab/bugs-scraper,k-data-lab/flo-scraper,k-data-lab/vibe-scraper,k-data-lab/korean-music-chart-scraper`

**Claude Code**

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=actors,docs,k-data-lab/bugs-scraper"
```

Claude Desktop: Settings → Connectors → Add custom connector에 같은 URL을 붙여 넣으세요.

**Cursor / VS Code** (`.cursor/mcp.json`; `.vscode/mcp.json`에서는 `"servers"`로 바꾸고 `"type": "http"` 추가)

```json
{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=actors,docs,k-data-lab/bugs-scraper",
      "headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }
    }
  }
}
```

**이렇게 물어보세요 (Try asking)**

- "Get the Bugs realtime TOP100 and list the top 10 with like counts."
- "Pull the Bugs weekly album chart and tell me which albums are new this week."
- "Fetch the Bugs realtime chart for 2026-10-01 at 09:00 and compare it with today's."
- "벅스 일간 국내 발라드 차트 가져와서 작곡가별로 묶어줘."

#### ❓ 자주 묻는 질문

**가사도 가져오나요?** 아니요. 가사는 저작권이 있는 콘텐츠라 넣지 않습니다. 대신 작사·작곡·편곡과 전체 참여 정보를 드립니다.

**재생수(스트리밍 수)도 있나요?** 벅스는 곡별 재생수를 공개하지 않습니다. 공개된 지표인 좋아요 수와 순위를 드립니다. 재생수·청취자수가 필요하면 [지니 차트 스크래퍼](https://apify.com/k-data-lab/genie-scraper)를 쓰세요.

**지난 시간의 실시간 차트도 되나요?** 네. `chartDate`와 `chartHour`를 넣으면 그 날 그 시각의 실시간 TOP100을 가져옵니다.

**오늘 날짜를 넣었는데 결과가 없어요.** 일간 차트는 보통 다음 날 공개됩니다. 벅스에 아직 없는 날짜면 "벅스가 ○○ 차트를 대신 보여 줌"이라는 메시지가 `RUN_SUMMARY`와 상태 메시지에 나옵니다. 날짜를 비우면 항상 최신 차트입니다.

**`kpop`·`pop` 장르를 일간 차트에 고르면요?** 국내·해외 전체 구분은 실시간 차트에만 있습니다. 그 조합은 `SKIPPED`로 건너뛰고 나머지는 정상 수집합니다.

**`rankStatus`가 `duration`이면?** 벅스가 순위 변동 대신 기간(예: "18일", "2주")을 표시한 곡입니다. 표시된 글자는 `rankNote`에 그대로 들어 있습니다. 신규 진입은 `new`, 급상승 표시는 `hot`입니다.

**크레딧이 비어 있는 곡이 있어요.** 벅스가 작사·작곡 정보를 등록하지 않은 곡(주로 오래된 곡)입니다. 벅스 곡 페이지에 있는 정보는 모두 가져옵니다.

**결과가 비어 있으면 요금이 나가나요?** 결과가 없으면 곡·앨범·아티스트 요금은 없습니다 (실행 시작 요금만). 없는 ID는 `RUN_SUMMARY`에 `NOT_FOUND`로 표시되고, 실행은 정상 종료됩니다.

**프록시가 필요한가요?** 보통 필요 없습니다. 벅스가 요청을 거절하면 액터가 자동으로 Apify 프록시로 다시 시도합니다.

**개인정보·이용 범위는?** 벅스 웹사이트에 공개된 차트·곡·앨범·아티스트 정보만 가져옵니다. 댓글(한마디), 회원 정보는 가져오지 않습니다. 요청은 적은 동시 접속으로 천천히 보냅니다. 수집한 데이터는 벅스 이용약관과 저작권법을 지켜 사용하시고, AI 모델 학습에는 쓰지 마세요. 비공식 도구이며 벅스(NHN Bugs)와 관계가 없습니다.

#### 🧰 More from K-Data Lab (다른 액터)

- [통합 음원차트 API (Korean Music Chart API)](https://apify.com/k-data-lab/korean-music-chart-scraper): 멜론·지니·벅스·FLO·VIBE 순위를 한 표로, 올킬 여부 포함
- [멜론 차트·곡·앨범 스크래퍼 (Melon Chart API)](https://apify.com/k-data-lab/melon-scraper): 멜론 TOP100·HOT100·장르 차트와 좋아요 수
- [지니뮤직 차트·곡·앨범 스크래퍼 (Genie Music Chart API)](https://apify.com/k-data-lab/genie-scraper): 지니 TOP200과 곡별 재생수·청취자수
- [바이브 차트·곡·앨범 스크래퍼 (NAVER VIBE Music Chart API)](https://apify.com/k-data-lab/vibe-scraper): 바이브 TOP300·성·연령별 차트·2011년~ 날짜별 지난 차트와 ISRC
- [FLO 차트·곡·앨범 스크래퍼 (FLO Music Chart API)](https://apify.com/k-data-lab/flo-scraper): FLO 24시간 TOP100·일간 TOP250과 곡별 차트 점수
- [Google Play Scraper API](https://apify.com/k-data-lab/google-play-scraper): 구글 플레이 앱 정보와 리뷰, 국가별, 로그인 불필요
- [Agoda Scraper](https://apify.com/k-data-lab/agoda-scraper): 아고다 호텔 가격, 객실 요금, 리뷰
- [Google Ads Transparency & Ad Library Scraper](https://apify.com/k-data-lab/google-ad-library-scraper): 경쟁사가 집행하는 구글 광고 전체
- [Amazon ASIN Rating & Review Count Scraper](https://apify.com/k-data-lab/amazon-asin-rating-scraper): 아마존 19개 마켓 ASIN 별점·리뷰 수
- [Amazon Seller Central Review Scraper & Monitor](https://apify.com/k-data-lab/amazon-seller-central-review-scraper): 내 브랜드의 아마존 리뷰 전체를 Seller Central에서 내보내기·모니터링
- [KB Land Korea Apartment Price API](https://apify.com/k-data-lab/kbland-scraper): KB부동산 시세, 전세, 실거래
- [R114 Korea Apartment Price & Jeonse API](https://apify.com/k-data-lab/r114-scraper): 부동산114 아파트 시세·실거래가
- [Airline Award Seat Scraper API](https://apify.com/k-data-lab/airline-award-seat-scraper): 마일리지 항공권 좌석, 세금, 잔여 좌석
- [Telegram Scraper API](https://apify.com/k-data-lab/telegram-channel-scraper): 공개 채널 메시지와 키워드 검색
- [Google Maps Scraper API](https://apify.com/k-data-lab/google-maps-scraper): 장소, 전화번호, 평점
- [TikTok Scraper API](https://apify.com/k-data-lab/tiktok-scraper): 영상 통계, 자막, 프로필
- [YouTube Scraper API](https://apify.com/k-data-lab/youtube-scraper): 영상, 채널, 검색
- [Uber Eats & Deliveroo Scraper API](https://apify.com/k-data-lab/uber-eats-deliveroo-scraper): 음식 배달 메뉴와 가격

#### 💬 문의

빠진 필드나 틀린 값이 있으면 **Issues** 탭에 남겨 주세요. 당일에 답변드립니다.

***

#### English summary

**Bugs Music Chart Scraper API**: scrape Bugs (벅스), one of Korea's major music streaming services, without login. You get the realtime, daily and weekly TOP100 song charts with rank change, realtime K-pop/foreign charts, **29 daily/weekly genre charts** (ballad, dance/pop, idol, hip-hop, trot, OST, J-POP, …), daily/weekly **album charts**, and **past charts by date and hour**. **Song details** add each song's **likes**, release date, genre/style, duration, FLAC quality, lyricists/composers/arrangers and the full credit list with artist IDs. You also get song search, albums (type, distributor, agency, release date, tracklist) and artists (type, members, likes, discography by popularity or date). Output as JSON/CSV/Excel or via API. **$0.25 per 1,000 songs**; 500 songs, 100 song details, 20 albums and 20 artists are free every month. Unofficial, not affiliated with Bugs / NHN Bugs. No lyrics, no comments, no user profiles.

Tags: bugs chart, bugs music scraper, bugs api, kpop chart, k-pop chart api, korean music chart, korean music chart api, k-pop chart data, 벅스 차트, 벅스 크롤링, 벅스 api, 음원 차트, 케이팝 차트

# Actor input Schema

## `charts` (type: `array`):

Which Bugs Music charts to fetch. Pass a list of chart IDs: realtime (song TOP100, updated hourly), day (daily song TOP100), week (weekly song TOP100), albumDay and albumWeek (album TOP100). Leave empty to skip charts and use only the search, song, album and artist fields below. Examples: \["realtime"] or \["day","albumWeek"]. 가져올 벅스 차트 (여러 개 선택 가능).

## `genres` (type: `array`):

Genre filter for song charts, as a list of genre codes. Empty means all genres. Realtime charts accept kpop (all Korean songs) and pop (all foreign songs). Daily and weekly charts accept the 29 genre codes in this list, such as nb (Korean ballad), nid (K-pop idol), nrh (Korean hip-hop) and ntrot (trot). Each genre returns its own chart, and a genre that does not exist for a chart is skipped. Album charts have no genres. Examples: \["kpop"] for realtime, \["nb","nid"] for daily or weekly. 비워 두면 전체 장르.

## `chartDate` (type: `string`):

Fill in only for a past chart, as YYYY-MM-DD. Example: 2026-01-01. Daily returns that day's chart, weekly returns the Monday-to-Sunday week containing that date, and realtime returns that date at the hour in 'Past realtime chart hour'. Leave empty for the latest chart. If Bugs has no chart for the date, the actor tells you instead of returning another day's chart. 비워 두면 최신 차트.

## `chartHour` (type: `integer`):

Hour of the past realtime chart, from 0 to 23. Example: 9 for the 09:00 chart. With a past date and no hour you get the 23:00 chart. Not needed for the latest realtime chart. 과거 날짜의 실시간 차트 시각.

## `maxResults` (type: `integer`):

Maximum songs or albums for each chart or search keyword. Bugs charts stop at rank 100 and search stops at 2,000 songs. Examples: 100 for the full TOP100, 10 for the top 10. 차트·검색어마다 최대 결과 수.

## `includeSongDetails` (type: `boolean`):

Opens each song's page to add its like count, release date, genre and style, duration, audio quality (FLAC), lyricists, composers, arrangers and the full credit list with artist IDs. Adds the song-details event charge per song and makes the run longer. Example: true when you need likes or songwriter credits, false (default) when you only need ranks. 좋아요·작사·작곡·편곡이 필요할 때 켜세요.

## `searchKeywords` (type: `array`):

Keywords for Bugs song search, in Korean or English. Each keyword returns up to the max results, in Bugs search order. Leave empty to skip search. Example: \["아이유", "aespa"]. 벅스 곡 검색어.

## `songs` (type: `array`):

Bugs song IDs or links, such as 6511885 or https://music.bugs.co.kr/track/6511885. Returns song details for each: likes, release date, genre and credits. Leave empty to skip. Example: \["6511885"]. 벅스 곡 ID 또는 링크.

## `albums` (type: `array`):

Bugs album IDs or links, such as 4156473 or https://music.bugs.co.kr/album/4156473. Returns album type, release date, genre and style, distributor, agency, likes, description and the tracklist with title tracks marked. Leave empty to skip. Example: \["4156473"]. 벅스 앨범 ID 또는 링크.

## `artists` (type: `array`):

Bugs artist IDs or links, such as 80049126 (IU) or https://music.bugs.co.kr/artist/80049126. Returns artist type, genre, members and likes, plus their song list. Leave empty to skip. Example: \["80049126"]. 벅스 아티스트 ID 또는 링크.

## `maxSongsPerArtist` (type: `integer`):

Songs to fetch for each artist. Use 0 for artist info only. Examples: 50 (default), 0. 아티스트마다 가져올 곡 수.

## `artistSongOrder` (type: `string`):

Order of each artist's song list, using the same sort options as the Bugs artist page: popular (default), latest or name. Example: "latest". 인기순·최신순·이름순.

## `proxyConfiguration` (type: `object`):

Usually not needed: if Bugs refuses a request, the actor retries through Apify Proxy on its own. Examples: {"useApifyProxy": false} (default), or {"useApifyProxy": true} to force the proxy. 보통 필요 없습니다.

## Actor input object example

```json
{
  "charts": [
    "realtime"
  ],
  "maxResults": 100,
  "includeSongDetails": false,
  "searchKeywords": [],
  "maxSongsPerArtist": 50,
  "artistSongOrder": "popular",
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `chart` (type: `string`):

No description

## `songs` (type: `string`):

No description

## `albums` (type: `string`):

No description

## `artists` (type: `string`):

No description

## `all` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "charts": [
        "realtime"
    ],
    "maxResults": 100,
    "searchKeywords": [],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("k-data-lab/bugs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "charts": ["realtime"],
    "maxResults": 100,
    "searchKeywords": [],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("k-data-lab/bugs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "charts": [
    "realtime"
  ],
  "maxResults": 100,
  "searchKeywords": [],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call k-data-lab/bugs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,k-data-lab/bugs-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/HUtBnNMDRV97jVPdg/builds/JscfXE9GAng5UPQZ3/openapi.json
