概览
想知道一部电影或一本书的评论都在说什么、口碑如何?把作品页面链接给它,它会取回该作品的评论列表,每条带评论标题、星级评分、评论内容和有用数,可以直接导出到表格里做口碑分析。
比起在评论页一页页往下翻,它把评论一次拉全,星级、有用数、追评信息都保留在结果里,适合当作影视书籍口碑分析的原始数据底表。
数据说明
评论取自豆瓣作品页面的公开评论区,只覆盖页面展示的评论,已删除或被折叠的评论不在其中。星级评分、有用数与没用数为采集当时页面展示的值;追评信息(追评者、追评时间、追评内容)为对应评论下的追评内容。结果按评论列表顺序返回,不做去重与排序。
结果长什么样
每条记录是一条评论:
| 评论标题 | 星级评分 | 有用数 | 评论内容 |
|---|---|---|---|
| 中国科幻电影的里程碑 | 5 | 3200 | 特效与叙事都达到了新高度…… |
| 期待第二部 | 4 | 860 | 整体不错,节奏稍慢…… |
应用场景
- 做口碑分析时,把「星级评分」按档统计,结合「有用数」找出高认可度的评论,判断口碑构成。
- 做舆情监测时,从「评论内容」里筛高频词,结合「推荐程度」看观众最在意的评价维度。
- 做互动追踪时,按「追评内容」看评论下的后续讨论,识别话题发酵的评论。
适用边界
单次任务采集一个作品页面的评论列表,结果条数受翻页次数与采集上限控制(默认最多 1000 条)。
- 适合用于
- 需要批量获取某部电影或书籍的评论内容与评分数据时
- 需要按有用数、星级分布分析评论口碑时
- 不要用于
- 需要作品的基本信息(导演、主演)时——用作品信息采集类 App
- 需要实时更新的评论推送时——本 App 按任务批量返回采集时刻的评论
失败处理
作者声明的失败与重试处理方式,接入时建议一并写进系统提示词。
- 1任务失败属可重试错误,可原样重新提交
- 2结果分页返回,条数多时请用 SDK/REST 导出而非反复翻页
输入参数
调用本 App 需要传入的参数,与 manifest.json 的 input.schema 同源。
| 字段名 | 业务名称 | 类型 | 必填 | 默认值 | 枚举 / 约束 | 示例 | 说明 |
|---|---|---|---|---|---|---|---|
| work_url | 作品页面链接 | string | 是 | — | — | https://movie.douban.com/subject/26861685/ | 要采集评论的豆瓣作品页面链接,形如 https://movie.douban.com/subject/26861685/,支持影评与书评页面。一次任务填写一个链接 |
| max_pages | 翻页次数 | integer | 否 | — | 1–100 | — | 评论列表最多翻几页,不填表示不限制翻页、按评论实际页数全部采集。数值越大耗时和费用越高 |
| comment_pages | 评论翻页次数 | integer | 否 | — | 1–100 | — | 每条评论下追评展开的翻页次数,不填表示不限制。数值越大耗时和费用越高 |
| max_collected_rows | 采集条数上限 | integer | 否 | 1000 | 1–1000000 | — | 本次任务总共采集的记录条数上限,默认 1000 条。数值越大耗时和费用越高 |
输出数据
单条记录的字段结构,与 manifest.json 的 output.schema 同源。
| 字段名 | 业务名称 | 类型 | 示例 | 说明 |
|---|---|---|---|---|
| work_name | 作品名 | string | — | 评论所属的电影或书籍名称(原字段名 作品名) |
| work_id | 作品ID | string | — | 作品的豆瓣 ID(原字段名 作品ID) |
| work_url | 作品链接 | string | — | 作品页面链接(原字段名 作品链接) |
| crawl_time | 爬取时间 | string | — | 本条数据的采集时间(原字段名 爬取时间) |
| review_title | 评论标题 | string | — | 评论的标题(原字段名 评论标题) |
| reviewer_id | 评论者ID | string | — | 发表评论的用户 ID(原字段名 评论者ID) |
| star_rating | 星级评分 | string | — | 评论对应的星级评分(原字段名 星级评分) |
| recommendation | 推荐程度 | string | — | 评论的推荐程度标注(原字段名 推荐程度) |
| review_time | 评论时间 | string | — | 评论发表时间(原字段名 时间) |
| summary | 摘要 | string | — | 评论摘要(原字段名 摘要) |
| review_content | 评论内容 | string | — | 评论正文内容(原字段名 评论内容) |
| useful_count | 有用数 | string | — | 评论收到的「有用」数(原字段名 有用数) |
| useless_count | 没用数 | string | — | 评论收到的「没用」数(原字段名 没用数) |
| repost_count | 转发数 | string | — | 评论的转发数(原字段名 转发数) |
| followup_reviewer_id | 追评者ID | string | — | 追评用户的 ID(原字段名 追评者ID) |
| followup_time | 追评时间 | string | — | 追评发表时间(原字段名 追评时间) |
| followup_homepage | 追评者主页 | string | — | 追评用户的主页链接(原字段名 追评者主页) |
| followup_content | 追评内容 | string | — | 追评内容(原字段名 追评内容) |
记录 Schema
输出按记录逐条返回。记录主键为 review_title,去重、增量、关联以它为准。
{
"type": "object",
"properties": {
"work_name": {
"type": "string",
"title": "作品名",
"description": "评论所属的电影或书籍名称(原字段名 作品名)"
},
"work_id": {
"type": "string",
"title": "作品ID",
"description": "作品的豆瓣 ID(原字段名 作品ID)"
},
"work_url": {
"type": "string",
"title": "作品链接",
"description": "作品页面链接(原字段名 作品链接)"
},
"crawl_time": {
"type": "string",
"title": "爬取时间",
"description": "本条数据的采集时间(原字段名 爬取时间)"
},
"review_title": {
"type": "string",
"title": "评论标题",
"description": "评论的标题(原字段名 评论标题)"
},
"reviewer_id": {
"type": "string",
"title": "评论者ID",
"description": "发表评论的用户 ID(原字段名 评论者ID)"
},
"star_rating": {
"type": "string",
"title": "星级评分",
"description": "评论对应的星级评分(原字段名 星级评分)"
},
"recommendation": {
"type": "string",
"title": "推荐程度",
"description": "评论的推荐程度标注(原字段名 推荐程度)"
},
"review_time": {
"type": "string",
"title": "评论时间",
"description": "评论发表时间(原字段名 时间)"
},
"summary": {
"type": "string",
"title": "摘要",
"description": "评论摘要(原字段名 摘要)"
},
"review_content": {
"type": "string",
"title": "评论内容",
"description": "评论正文内容(原字段名 评论内容)"
},
"useful_count": {
"type": "string",
"title": "有用数",
"description": "评论收到的「有用」数(原字段名 有用数)"
},
"useless_count": {
"type": "string",
"title": "没用数",
"description": "评论收到的「没用」数(原字段名 没用数)"
},
"repost_count": {
"type": "string",
"title": "转发数",
"description": "评论的转发数(原字段名 转发数)"
},
"followup_reviewer_id": {
"type": "string",
"title": "追评者ID",
"description": "追评用户的 ID(原字段名 追评者ID)"
},
"followup_time": {
"type": "string",
"title": "追评时间",
"description": "追评发表时间(原字段名 追评时间)"
},
"followup_homepage": {
"type": "string",
"title": "追评者主页",
"description": "追评用户的主页链接(原字段名 追评者主页)"
},
"followup_content": {
"type": "string",
"title": "追评内容",
"description": "追评内容(原字段名 追评内容)"
}
},
"required": [],
"additionalProperties": false
}调用方式
本 App 支持通过 MCP、API、SDK 与文件导出方式接入,各接入方式共享同一套能力与计价。所有请求统一使用 Authorization: Bearer 请求头完成身份认证,凭证为 API Key(长期有效,在开放平台创建);MCP 客户端另支持 OAuth 免密钥登录。CLI、Skill 等更多接入方式正在规划中。
通过 MCP(Model Context Protocol)协议,可在 Claude、Cursor 等 AI 客户端中直接调用本 App。选择你的客户端与认证方式,复制下方配置即可接入。
客户端配置
把 Bearer 后替换为长期有效的 API Key 即可,各类客户端与 CI、无浏览器环境通用。
{
"mcpServers": {
"SpiderByte__douban-reviews": {
"type": "http",
"url": "https://mcp-v2.bazhuayu.com?pin=SpiderByte/douban-reviews",
"headers": { "Authorization": "Bearer <YOUR_API_KEY>" }
}
}
}让 AI 自己完成配置
不想手动改配置?复制安装提示词,粘贴到任意 AI 客户端对话框,由它按自身方式完成接入(提示词会让 AI 向你索要 API Key,避免凭证留在对话记录或共享配置里)。
如需在同一个 MCP 连接里指定多个 App,前往 MCP 连接页(已为你指定本 App)。
价格
按实际成功返回的数据条数计费,任务失败不计费。
多个计费事件按各自口径独立累计,具体以每一项说明为准;任务失败不计费。
立即体验
填写参数直接运行,结果来自真实调用。