317 字
2 分钟
导出你在豆瓣的观影记录

导出你在豆瓣的观影记录目前没有官方提供一键导出的功能,但你可以通过以下方式来实现:


✅ 方法:通过豆瓣的「导出 CSV」脚本(推荐)#

适合有一定技术基础的用户,可以完整导出观影数据(标记过的想看/看过/在看)

  1. 打开浏览器,访问你的电影主页 例如:

    https://movie.douban.com/people/你的豆瓣ID/collect
  2. 按下 F12 打开开发者工具 → 切换到「Console 控制台」

  3. 输入 允许粘贴 回车

  4. 粘贴以下脚本并回车运行(以导出“看过”列表为例):

(async () => {
let start = 0;
let movies = [];
while (true) {
const res = await fetch(`/people/你的豆瓣ID/collect?start=${start}&sort=time&rating=all&filter=all&mode=grid`);
const text = await res.text();
const doc = new DOMParser().parseFromString(text, 'text/html');
const items = [...doc.querySelectorAll('.item')].map(el => ({
title: el.querySelector('.title')?.textContent.trim(),
rating: (el.querySelector('[class^="rating"]')?.className.match(/rating(\d)-t/)?.[1] || 0),
date: el.querySelector('.date')?.textContent.trim(),
link: el.querySelector('a')?.href
}));
if (items.length === 0) break;
movies.push(...items);
start += 15;
}
console.log('共获取到', movies.length, '部影片');
console.log(movies);
// 可导出为 CSV
const csv = '标题,评分,标记日期,链接\n' + movies.map(m => `"${m.title}",${m.rating},"${m.date}","${m.link}"`).join('\n');
const blob = new Blob([csv], { type: 'text/csv' });
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'douban-movies.csv';
a.click();
})();
  • 替换 你的豆瓣ID 为你个人主页链接里的 ID

浏览器会自动下载包含全部观影记录的 douban-movies.csv 文件

导出你在豆瓣的观影记录
https://blog.wlens.top/posts/导出你在豆瓣的观影记录/
作者
Lao Wang
发布于
2025-07-05
许可协议
CC BY-NC-SA 4.0