# DramaBox Drama Details Scraper - Metadata & Episodes (`spider_studio/dramabox-drama-detail`) Actor

Scrape DramaBox drama details in bulk by Book ID. Extract titles, plot summaries, cover images, genres, cast, play counts and episode indexes. Export to CSV, Excel or JSON for catalog enrichment, short-drama research and scheduled updates. Pay per successful drama.

- **URL**: https://apify.com/spider\_studio/dramabox-drama-detail.md
- **Developed by:** [Tarique](https://apify.com/spider_studio) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 successful drama details

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

### What does the DramaBox Drama Details Scraper do?

**DramaBox Drama Details Scraper** extracts drama metadata and episode indexes from [DramaBox](https://www.dramabox.com). Enter a list of Book IDs to collect titles, plot summaries, cover images, genres, cast information and chapter details in one run.

Use this **DramaBox scraper** through Apify Console or as a **DramaBox data API** for your application. Each successful drama becomes one dataset row with its chapter index included, ready for export to CSV, Excel or JSON.

### Why scrape DramaBox drama details?

- Enrich a short-drama catalog with descriptions, covers, genres and cast information.
- Research drama catalogs, episode counts and available play counts.
- Connect titles discovered through search or rankings to detailed drama records.
- Schedule recurring runs to refresh your catalog and track metadata changes.
- Feed structured drama data into spreadsheets, dashboards and data workflows.

Apify provides scheduling, API access, integrations, run monitoring and downloadable results. You can start with the prefilled Book ID and add more IDs when you are ready.

### What DramaBox data can you extract?

| Field | Type | Description |
| --- | --- | --- |
| `book_id` | String | Requested DramaBox drama identifier |
| `book_name` | String | Drama title |
| `introduction` | String or null | Plot summary or description |
| `cover` | String or null | Cover image URL |
| `tags` | Array or null | Genre and category labels |
| `chapter_count` | Number or null | Reported episode count |
| `play_count` | Number, string or null | Reported play count |
| `performers` | Array or null | Available cast information |
| `pay_chapter_num` | Number or null | Reported paid chapter count |
| `chapters` | Array | Episode IDs, indexes and available payment flags |
| `success` / `error` | Boolean / string or null | Collection outcome and any error message |

Fields depend on what DramaBox provides for each title. Some optional information may be missing.

### How to scrape DramaBox drama details

1. Open the **Input** tab.
2. Enter one or more drama identifiers in **Book Ids**. A sample ID is prefilled.
3. Start the Actor and wait for the run to finish.
4. Open **Output** to review the collected dramas.
5. Export the dataset or retrieve it through the **API** tab.

For a single drama, enter a list containing one Book ID. For larger catalogs, provide up to 1,000 IDs per run. Exact duplicate IDs are processed once within that run.

### Input

See the **Input** tab for full configuration options. The Actor accepts one field, `book_ids`, containing a list of decimal strings with 1–20 digits each. Keep IDs as strings so large identifiers retain their precision.

```json
{
  "book_ids": ["42000004343"]
}
```

Book IDs can be taken from your existing catalog or the results of a DramaBox search or ranking run. Replace the sample with the dramas you want to collect.

### Output and exports

Each successful row contains one drama's metadata and its chapter index. Unavailable titles produce an error row, and other IDs continue processing. The run summary shows successful results, failed requests and charged results.

The following example is shortened for readability:

```json
{
  "book_id": "42000004343",
  "book_name": "If I Never Loved You",
  "chapter_count": 50,
  "chapters": [
    {
      "chapter_id": "700278553",
      "chapter_index": 0,
      "is_charge": 0
    }
  ],
  "success": true,
  "error": null
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel. JSON preserves the nested chapter index for applications and further analysis.

### How much does it cost to scrape DramaBox drama details?

| Apify subscription | Price per successful Book ID |
| --- | --- |
| Free plan | **$0.03** |
| Any paid plan | **$0.02** |

A result fee applies only when a drama's details are successfully saved to the dataset. Its chapter index is included in that fee. Failed IDs and exact duplicates within the same run have no result fee. Collecting the same ID in a new run counts as a new result.

Apify also applies its [default Actor Start fee](https://docs.apify.com/actors/publishing/monetize/pay-per-event#use-apify-actor-start): **$0.00005** for a run with up to 1 GB of memory, with one additional start event per extra GB. The start fee applies even if no drama is collected successfully. Platform usage is included in the event prices.

For example, 100 successful Book IDs cost **$3.00005** on the Free plan or **$2.00005** on a paid plan when the run uses up to 1 GB of memory. You can set a maximum charge for a run; collection stops when the remaining budget cannot cover another result.

### Related DramaBox Actors

Use these Actors for other parts of your DramaBox workflow:

| Actor | What it does |
| --- | --- |
| [DramaBox Search Scraper](https://apify.com/spider_studio/dramabox-drama-search) | Find dramas by keyword and collect IDs, titles and listing metadata. |
| [DramaBox Rankings Scraper](https://apify.com/spider_studio/dramabox-drama-rank) | Discover titles from the Most Watched, Most Searched and New Dramas rankings. |
| [DramaBox Actor Profile Scraper](https://apify.com/spider_studio/dramabox-performer-detail) | Collect performer profiles, biographies and drama credits. |
| [DramaBox Episodes Scraper](https://apify.com/spider_studio/dramabox-drama-chapters) | Collect chapter lists and temporary playback URLs for available free episodes. |
| [DramaBox Video Downloader](https://apify.com/spider_studio/dramabox-chapter-download) | Download available free episode videos and save MP4 files with download links. |

### Frequently asked questions

#### Can I collect a single DramaBox drama?

Yes. Enter one ID in the Book Ids list. The same field supports single-title and bulk collection.

#### Are failed Book IDs charged?

Failed IDs have no result fee. Check their error rows and retry them if needed. The Actor Start fee still applies to the run.

#### Does this Actor download episodes?

The output contains drama metadata and an episode index. For playback links or video files, use an Actor designed for that task.

#### Why are some metadata fields empty?

DramaBox may omit cast information, genres or other optional fields for a title. Those fields are returned as available at collection time.

### Support

Use the **Issues** tab to report unavailable titles or request improvements. Include the affected Book IDs and a run link so the result can be checked. Use the **API** tab for programmatic access and integrations.

# Actor input Schema

## `book_ids` (type: `array`):

DramaBox book IDs to collect. Enter one ID per item; duplicate IDs are processed once.

## Actor input object example

```json
{
  "book_ids": [
    "42000004343"
  ]
}
```

# Actor output Schema

## `dataset` (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 = {
    "book_ids": [
        "42000004343"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("spider_studio/dramabox-drama-detail").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 = { "book_ids": ["42000004343"] }

# Run the Actor and wait for it to finish
run = client.actor("spider_studio/dramabox-drama-detail").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 '{
  "book_ids": [
    "42000004343"
  ]
}' |
apify call spider_studio/dramabox-drama-detail --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,spider_studio/dramabox-drama-detail"
        }
    }
}
```

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/azkHEQdDLRKLLBdfL/builds/bYTVcgefqmTI1KVt2/openapi.json
