# Douban Feed Scraper (`parseforge/douban-feed-scraper`) Actor

Scrapes Douban feed items from the homepage, subject explore pages, or search queries. Returns each item as a flat row with author details, content, and engagement counts like responses, likes, and shares.

- **URL**: https://apify.com/parseforge/douban-feed-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Social media, News
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.62 / 1,000 results

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?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### Douban Feed Scraper

**Scrape Douban feed data from the homepage, subject explore pages, or search queries, up to a million items per run.** Each item includes author details, title, abstract, image URL, and engagement metrics like response, like, and share counts. Export to CSV, JSON, Excel, or XML.

Douban's community feed and subject discovery pages are rich with trending discussions, reviews, and recommendations, but manually collecting this data is slow and repetitive. This Douban feed scraper reads the public HTML feeds directly, extracting structured data from the homepage, movie/book explore pages, and search results. It returns each feed item in a consistent, flat schema ready for analysis.

| Who uses it | What they scrape Douban for |
|---|---|
| Market researchers | Monitor trending topics and cultural sentiment across Douban's community discussions. |
| Content marketers | Identify popular books, movies, and media generating buzz for campaign planning. |
| Data analysts | Build datasets of Douban feed engagement to track content virality over time. |
| App developers | Integrate real-time Douban feed data into recommendation engines or dashboards. |

### What it does

This Actor collects Douban feed items by homepage, subject explore URL, or search query, and returns each one as a flat row with author info, content, and engagement counts.

- 🏠 **Default homepage feed:** Scrape the curated feed from Douban's homepage without any filters.
- 🔍 **Search query filtering:** Provide a search term to scrape only feed items matching your keyword.
- 🎬 **Subject explore pages:** Target specific movie or book explore URLs for category-specific trending content.
- 📊 **Engagement metrics:** Each item returns response count, like count, and share count for popularity analysis.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with Douban data

**📈 Track trending discussions.**

A market researcher scrapes the Douban homepage feed daily to identify which movies and books are generating the most discussion and engagement this week.

**🎯 Monitor brand or topic mentions.**

A content marketer uses a search query to scrape Douban feed items mentioning a specific film title, tracking sentiment and response volume over its release window.

**📚 Build a recommendation dataset.**

A data analyst scrapes subject explore pages for books and movies to compile a dataset of trending items with engagement signals for a collaborative filtering model.

**🔔 Power a content dashboard.**

An app developer schedules regular runs of the Douban feed scraper to feed fresh, trending Douban content into a media discovery dashboard.

### Why choose this scraper

| | What you get |
|---|---|
| **No API key required** | Access public Douban feed data without registration or OAuth. |
| **Flexible targeting** | Scrape the homepage, search results, or specific subject explore pages. |
| **Structured output** | Every item is returned in a clean, flat schema with consistent field names. |
| **Engagement data included** | Get response, like, and share counts for each feed item. |
| **Scalable volume** | Paid users can scrape up to 1,000,000 items per run. |

### How it compares

This actor focuses on the general Douban feed and subject explore pages, while the Douban Movie Scraper targets movie-specific detail pages with ratings and reviews.

| Feature | ParseForge | Douban Movie Scraper - Ratings, Reviews & Hot Lists |
|---|---|---|
| Homepage feed scraping | Yes | Not listed |
| Subject explore pages (movies, books) | Yes | Not listed |
| Search query filtering | Yes | Not listed |
| Engagement metrics (likes, shares, responses) | Yes | Not listed |
| Movie ratings and reviews | Not listed | Yes |
| Cast and crew data | Not listed | Yes |

### What a Douban record looks like

Every record returns as one flat JSON row. Here is a real one from a run:

```json
{
 "imageUrl": "https://img9.doubanio.com/view/group_topic/large/public/p743622176.jpg",
 "itemId": "1738349545",
 "source": "来自：豆瓣广播",
 "authorName": "9回应\n 211赞\n 3转发",
 "authorUrl": "https://www.douban.com/topic/497380064/?_spm_id=MzU0MDQ0MQ",
 "authorAvatar": "https://img3.doubanio.com/icon/u3540441-63.jpg",
 "title": "旅行碎片",
 "titleUrl": "https://www.douban.com/topic/497380064/?_spm_id=MzU0MDQ0MQ",
 "responseCount": 0,
 "likeCount": 0,
 "forwardCount": 0,
 "scrapedAt": "2026-08-22T19:42:14.806Z"
}
```

Every value above comes from a real run. A field a record does not have comes back as `null`.

### Configure the run

Drive the Actor from the default homepage, a search query, or a direct subject explore URL, and set a maximum item limit to control the size of your dataset. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "maxItems": 10
}
```

A larger pull:

```json
{
 "maxItems": 200
}
```

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [Douban Feed Scraper](https://apify.com/parseforge/douban-feed-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to Douban through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/douban-feed-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that your search query is not too restrictive. Try leaving it empty to scrape the default homepage feed first. Also verify that the target URL is a valid Douban feed or explore page.

**Why am I only getting 10 items?**

Free Apify users are limited to 10 items as a preview. Upgrade to a paid plan and increase the max items field to scrape more data, up to 1,000,000 items.

**The actor runs but some fields are empty.**

Not every feed item includes all fields. For example, some items may lack an image or share count. This is normal and reflects the data available on the page at the time of scraping.

**Can I scrape a specific Douban group or discussion thread?**

This actor is designed for the main feed and subject explore pages. For specific group or discussion thread scraping, you may need a different, more targeted actor.

### FAQ

| Question | Answer |
|---|---|
| What data does this Douban feed scraper return? | Each feed item includes the source, author name, author URL, author avatar, title, topic URL, abstract text, image URL, response count, like count, and share count. |
| Can I scrape Douban feed data without logging in? | Yes. This actor reads the public HTML feeds from Douban, so no account, login, or API key is required. |
| How do I scrape only specific topics from the Douban feed? | Use the search query input field to filter feed content by a keyword. Leave it empty to scrape the default homepage feed. |
| What is the maximum number of items I can scrape? | Free users are limited to 10 items as a preview. Paid users can scrape up to 1,000,000 items per run by setting the max items field. |
| Can I scrape Douban subject explore pages for movies or books? | Yes. Provide a direct subject explore URL as the start URL, such as the movie or book trending pages, to scrape category-specific feeds. |
| Does this actor handle Douban's anti-bot protections? | The target pages showed no anti-bot challenge markers during probing. The actor reads the initial HTML directly without a browser, making it fast and efficient. |
| What export formats are supported? | You can export your scraped Douban feed data to CSV, JSON, Excel, or XML formats from the Apify dataset. |
| Is this the same as the Douban Movie Scraper? | No. This actor focuses on the general Douban feed and subject explore pages. The Douban Movie Scraper targets movie-specific pages with ratings, reviews, and cast details. |
| Can I schedule this scraper to run automatically? | Yes. Apify supports scheduled runs, so you can set this actor to scrape the Douban feed hourly, daily, or on any custom interval. |
| Does this scraper work for Douban book feeds? | Yes. You can target the book subject explore page to scrape trending book discussions and recommendations from the Douban feed. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Douban Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

### 💰 How much does it cost to scrape Douban Feed?

This Actor uses **pay-per-result** pricing: **$0.004 per result** collected. You are billed only for the results you receive, so a run that returns nothing costs nothing.

# Actor input Schema

## `searchQuery` (type: `string`):

Optional search term to filter feed content. Leave empty to scrape the default homepage feed.

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

Complete dataset of all scraped records.

# 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 = {
    "searchQuery": "",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/douban-feed-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 = {
    "searchQuery": "",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/douban-feed-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 '{
  "searchQuery": "",
  "maxItems": 10
}' |
apify call parseforge/douban-feed-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/douban-feed-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/hFwTia4X3tv2Iatyg/builds/e8bnydLoVcBSMaikk/openapi.json
