Douban Scraper: Movies, Books, Reviews, Comments, Groups (豆瓣)
Pricing
from $3.00 / 1,000 douban subjects
Douban Scraper: Movies, Books, Reviews, Comments, Groups (豆瓣)
Douban scraper for movies, TV and books (search, Top 250 and hot charts, subject pages) with ratings and star distribution, long reviews with full text, short comments and group topics. No login, no browser, no cookies. From $2 per 1,000 rows.
Pricing
from $3.00 / 1,000 douban subjects
Rating
0.0
(0)
Developer
Data Gleaner
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Douban Scraper pulls public data from Douban (豆瓣), China's largest film, TV and book rating site, into JSON, CSV or Excel. You get no login, no cookies and no browser to run. Search by title or keyword, read the Top 250 and hot charts, or paste movie, TV and book links. Each title comes back with its Douban score, rating count, 1-5 star distribution, genres, directors, cast or authors, release dates and synopsis. On request you also get its long reviews (影评 / 书评) with full text, its short comments (短评) and the newest topics of any public Douban group (小组). Rows cost $2 to $3 per 1,000.
What you can do with it
- Film, TV and book market research in China. Find out how Chinese audiences rate a title, how the score is spread across 1 to 5 stars, and how many people have watched it or want to.
- Sentiment and review analysis. Collect the most helpful long reviews with full text and the hottest short comments, each with its star rating and vote count. The text is ready for sentiment models, topic modelling or an LLM summary.
- Charts and catalogues. Pull Douban Top 250 Movies, Top 250 Books, the real-time hot movies and series, the weekly top 10s, films now showing and coming soon, and bestsellers, in chart order with a
rankon each row. - Release tracking. Run the hot and coming-soon charts on a schedule to see which titles are rising and how their scores move after release.
- Community listening. Read the newest topics in public Douban groups (rentals, hobbies, fan groups, consumer advice), with full text, replies, likes and tags.
- LLM and RAG pipelines. Every text field is clean plain text with HTML removed, one row per review, comment or topic.
Input
| Field | Type | What it does |
|---|---|---|
searchQueries | list of text | Titles or keywords, Chinese or English (三体, 流浪地球, Christopher Nolan). Each returns matching movies, series and books as subject rows. |
searchType | all / movie / book | Default all: runs the movie and TV search and the book search for each keyword. |
subjectUrls | list of text | Douban pages such as https://movie.douban.com/subject/1292052/ or https://book.douban.com/subject/2567698/ (m.douban.com links work too). A bare numeric ID is tried as a movie or series, then as a book. |
charts | list | Any of movie_top250, movie_real_time_hotest, movie_weekly_best, movie_showing, movie_soon, movie_hot_gaia, tv_real_time_hotest, tv_hot, tv_chinese_best_weekly, tv_global_best_weekly, show_hot, book_top250, book_bestseller. |
maxSubjects | number | Cap per keyword (per category) and per chart. Default 50, max 250. |
fetchSubjectDetails | true / false | Default true. Fetches the full page for search and chart rows: genres, directors, cast, authors, countries, languages, dates, runtime, pages, synopsis, tags and the star distribution. Two extra requests per title. Turn it off for a fast list (title, year, score, rating count, cover). |
includeReviews | true / false | Default false. Adds each title's most helpful long reviews as review rows. |
maxReviewsPerSubject | number | Default 40, max 40 (Douban's limit for signed-out visitors). |
fetchFullReviewText | true / false | Default true. Adds the full text of each review, plus its unhelpful votes, read count, spoiler flag and IP region. One extra request per review. Off: Douban's opening excerpt of about 300 characters. |
includeComments | true / false | Default false. Adds each title's hottest short comments as comment rows. |
maxCommentsPerSubject | number | Default 100, max 150 (Douban's limit for signed-out visitors). |
reviewUrls | list of text | Single reviews (https://movie.douban.com/review/1000369/ or an ID), each with full text. |
groupUrls | list of text | Groups such as https://www.douban.com/group/beijingzufang/ or a group ID. Returns the newest topics. |
maxTopicsPerGroup | number | Default 100, max 450. |
fetchTopicContent | true / false | Default true. Adds each topic's full text, IP region and save count. One extra request per topic. |
topicUrls | list of text | Single group topics (https://www.douban.com/group/topic/503033210/ or an ID). |
requestDelaySeconds | number | Pause between requests, default 1.2 s (randomised up to 1.5x). |
proxyConfiguration | object | Optional. The default is no proxy. If Douban keeps refusing the run's IP, the Actor moves to a fresh Apify Proxy session by itself. |
Give at least one keyword, link, chart, group or topic. With an empty input the Actor runs a built-in example instead of failing: the top 5 of the real-time hot movies chart.
{"subjectUrls": ["https://movie.douban.com/subject/1292052/"],"includeReviews": true,"maxReviewsPerSubject": 20,"includeComments": true,"maxCommentsPerSubject": 50,"charts": ["movie_top250"],"maxSubjects": 250,"groupUrls": ["https://www.douban.com/group/beijingzufang/"],"maxTopicsPerGroup": 50}
Output
The dataset has one row per item. The type field tells the four kinds apart: subject, review, comment and groupTopic. The Output tab has a view for each kind. Field names are camelCase, timestamps are ISO 8601 in Beijing time (+08:00) and counts are numbers. Every row carries scrapedAt and the input it came from (query, chart, subjectUrl, reviewUrl, groupUrl or topicUrl). Authors appear only as their public display name, numeric Douban ID and profile link.
A subject (movie, series or book):
{"type": "subject","id": "1292052","subjectType": "movie","title": "肖申克的救赎","originalTitle": "The Shawshank Redemption","year": 1994,"rating": 9.7,"ratingCount": 3352326,"ratingDistribution": {"star1": 0.1, "star2": 0.1, "star3": 1.4, "star4": 13.0, "star5": 85.4},"watchedOrReadCount": 5758894,"wishCount": 520505,"genres": ["剧情", "犯罪"],"directors": ["弗兰克·德拉邦特"],"actors": ["蒂姆·罗宾斯", "摩根·弗里曼", "鲍勃·冈顿"],"countries": ["美国"],"languages": ["英语"],"durations": ["142分钟"],"intro": "一场谋杀案使银行家安迪(蒂姆·罗宾斯 Tim Robbins 饰)蒙冤入狱……","reviewCount": 15009,"commentCount": 668735,"honors": ["豆瓣电影Top250"],"url": "https://movie.douban.com/subject/1292052/","coverUrl": "https://img3.doubanio.com/view/photo/m_ratio_poster/public/p2934829882.jpg","rank": 1,"chart": "movie_top250","scrapedAt": "2026-10-22T00:30:13+00:00"}
Books add authors, translators, publisher, pages, price, subtitle and authorIntro. Series add episodesCount.
A review (long review):
{"type": "review","id": "1000369","subjectId": "1292052","subjectType": "movie","subjectTitle": "肖申克的救赎","title": "十年·肖申克的救赎","abstract": "距离斯蒂芬·金(Stephen King)和德拉邦特(Frank Darabont)们缔造这部伟大的作品已经有十年了……","fullText": "距离斯蒂芬·金(Stephen King)和德拉邦特……\n在我眼里,肖申克的救赎与信念、自由和友谊有关。\n……","rating": 5,"usefulCount": 18956,"uselessCount": 735,"commentsCount": 1082,"readCount": 1429185,"spoiler": false,"createdAt": "2005-05-12T20:44:13+08:00","author": {"id": "1000152", "name": "大头绿豆", "profileUrl": "https://www.douban.com/people/1000152/"},"url": "https://movie.douban.com/review/1000369/"}
A comment (short comment, 短评):
{"type": "comment","id": "32514679","subjectId": "1292052","subjectType": "movie","text": "恐惧让你沦为囚犯,希望让你重获自由。——《肖申克的救赎》","rating": 5,"usefulCount": 26520,"status": "done","createdAt": "2008-02-27T21:43:23+08:00","author": {"id": "1289463", "name": "如小果", "profileUrl": "https://www.douban.com/people/1289463/"},"subjectLink": "https://movie.douban.com/subject/1292052/"}
A groupTopic:
{"type": "groupTopic","id": "503033210","groupId": "661193","groupName": "火花四射观察室","title": "膳食纤维。。。其实是被名字骗了。。。","text": "一提到膳食纤维。。。大家可能就会想到绿叶蔬菜什么的。。。","createdAt": "2026-10-19T23:36:12+08:00","updatedAt": "2026-10-21T19:13:40+08:00","commentsCount": 151,"likeCount": 1687,"collectionsCount": 2028,"tags": [],"ipLocation": "山东","url": "https://www.douban.com/group/topic/503033210/"}
A review or comment's rating is the author's own 1-5 stars (null when they gave none). A subject's rating is the Douban score out of 10. A field Douban does not show for an item is null or an empty list.
How much does it cost to scrape Douban?
You pay per row saved to the dataset. These prices are final:
| Event | Price | Per 1,000 |
|---|---|---|
subject: one movie, series or book | $0.003 | $3 |
review: one long review (full text included) | $0.003 | $3 |
comment: one short comment | $0.002 | $2 |
topic: one group topic | $0.003 | $3 |
Nothing is charged for failed pages, retries or the extra requests behind full text and details. The run stops by itself when it reaches your maximum total charge. Platform usage is included in the price.
Examples:
- Douban Top 250 movies with full details: 250 subjects = $0.75.
- 10 films with 40 reviews and 100 short comments each: 10 × $0.003 + 400 × $0.003 + 1,000 × $0.002 = $3.23.
- A group's newest 100 topics with full text: $0.30.
Limits
Douban shows signed-out visitors only part of each list. The Actor stops cleanly at each limit and says so in the run's status message. We measured these limits on 2026-10-22:
- Long reviews: the top 40 per title, most helpful first. Douban hides a few of them, so expect 35 to 40 (37 for The Shawshank Redemption, 39 for 三体).
- Short comments: the top 150 per title, hottest first. Many books stop at 100. Sorting by newest needs a login, so it is not offered.
- Group topics: the newest 450 or so per group. We got 434 from a busy group, after removing duplicates and ads.
- Search: the most relevant 250 titles per keyword and category.
- Public data only. Private groups, members-only topics, user profiles, ratings lists and replies under reviews or topics are not included.
- Douban can change or throttle its public pages at any time. The Actor backs off and retries on errors, and it moves to a fresh proxy session if its IP keeps being refused. Even so, a run can return fewer rows than asked when Douban limits it. Raising
requestDelaySecondshelps.
Use with Python
# pip install apify-clientfrom apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("datagleaner/douban-scraper").call(run_input={"subjectUrls": ["https://movie.douban.com/subject/1292052/"], "includeComments": True, "maxCommentsPerSubject": 20})for item in client.dataset(run.default_dataset_id).iterate_items():print(item["type"], item.get("rating"), (item.get("text") or item.get("title") or "")[:60])
That run returns 1 subject and 20 comments, for $0.043.
Use with JavaScript / Node.js
// npm install apify-clientimport { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('datagleaner/douban-scraper').call({charts: ['movie_top250'],maxSubjects: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();for (const s of items) console.log(s.rank, s.title, s.rating, s.ratingCount);
Use it from n8n, Make, Zapier or an AI agent
Actor ID: datagleaner/douban-scraper
Minimal input:
{"searchQueries": ["三体"], "maxSubjects": 10}
Each tool below runs this Actor with your own Apify API token.
-
n8n: add the Apify node (
@apify/n8n-nodes-apify) and choose Run an Actor and get dataset. Set the Actor todatagleaner/douban-scraperand paste the input above. -
Make: use the Apify app's Run an Actor module, then Get Dataset Items.
-
Zapier: use the Apify action Run Actor, then the search Fetch dataset items.
-
AI agents (MCP): connect to
https://mcp.apify.com?tools=datagleaner/douban-scraper. In Claude Code:claude mcp add --transport http apify "https://mcp.apify.com?tools=datagleaner/douban-scraper"Then run
/mcpto sign in to Apify, and ask in plain language. For example: "Use the Douban scraper to get the 40 most helpful reviews of 流浪地球2, and summarise in English what Chinese viewers praised and criticised."
FAQ
How do I scrape Douban movie reviews? Put the movie's Douban link in subjectUrls and turn on includeReviews. You get up to 40 long reviews with full text. To also get short comments, turn on includeComments, which gives up to 150.
Can I scrape the Douban Top 250? Yes. Add movie_top250 or book_top250 to charts and set maxSubjects to 250. The rows come in chart order with rank.
Does it work for TV series and books? Yes. Movie links that point to a series return subjectType: "tv". Book links return subjectType: "book", with authors, publisher, pages and price.
Do I need a Douban account, API key or cookies? No. The Actor reads the same public pages any visitor sees on m.douban.com. You only need an Apify account.
Why are there fewer than 150 comments or 40 reviews? Douban shows signed-out visitors only the top of each list, and fewer for some books. A title with few ratings may also have fewer. The status message says when a limit was reached.
Can I get the newest comments instead of the hottest? No. Douban requires a login to sort by newest, and this Actor never logs in. For ongoing tracking, schedule a run and dedupe on id.
Can I translate the text? The text is returned as Douban shows it (mostly Chinese). Pipe the text and fullText fields to any translation or LLM step.
Responsible use
This Actor collects only publicly visible Douban pages and keeps the request rate low by default. Respect Douban's terms. Reviews, comments and group posts are written by people, and group topics can contain personal details that posters chose to share. You are responsible for having a lawful basis to process this data and for meeting your obligations under GDPR, China's PIPL and any other law that applies to your use, including retention, deletion requests and cross-border transfer. This is not legal advice.
Feedback
If this Actor saved you time, a rating on its Store page helps others find it. Problems or requests: open an issue on the Issues tab.
中文说明
豆瓣抓取器: 无需登录、无需 Cookie、无需浏览器,抓取豆瓣公开数据并输出干净的 JSON。支持电影、电视剧、图书的搜索、榜单(电影 Top250、图书 Top250、实时热门、一周口碑榜、正在热映、即将上映、畅销书等)和条目链接,返回评分、评分人数、星级分布、类型、导演、演员、作者、上映日期、简介,可选影评/书评(含全文)、短评,以及豆瓣小组的最新帖子。
- 输入:
searchQueries(关键词)、subjectUrls(条目链接或 ID)、charts(榜单)、includeReviews/includeComments(影评、短评)、groupUrls(小组)、topicUrls(帖子)。 - 价格: 条目、影评、小组帖子每 1,000 条 3 美元,短评每 1,000 条 2 美元。只为实际保存的数据付费。
- 限制: 游客状态下每部作品最多约 40 篇影评、约 150 条热门短评(部分图书约 100 条),每个小组约 450 个最新帖子;只抓取公开数据。
- 合规: 请遵守豆瓣服务条款;个人信息的处理须符合 GDPR、《个人信息保护法》等适用法律,责任由使用者承担。