Letterboxd Watchlist

🎬 一键导出影迷观影清单

无需登录即可抓取公开 Letterboxd 用户观影清单,导出为 CSV/JSONL 格式,方便备份或构建待看片单。

收藏
7.9k
安装
1.8k
版本
0.1.1
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

该技能通过 Python 脚本 scrape_watchlist.py 爬取 Letterboxd 平台公开用户的观影清单(Watchlist),无需账号登录即可提取影片标题与链接,支持导出为 CSV 或 JSONL 格式。

基础命令

python scripts/scrape_watchlist.py <username> --out watchlist.csv

推荐稳健模式

python scripts/scrape_watchlist.py <username> --out watchlist.jsonl --delay-ms 300 --timeout 30 --retries 2

脚本采用分页爬取策略(/watchlist/page/<n>/),以 data-target-link="/film/..." 存在性作为终止条件,内置 250ms 默认延迟以遵守爬虫礼仪,支持重试与超时机制。

显著优点

  • 零认证门槛:仅需公开用户名,无需 API 密钥或登录态
  • 轻量输出:CSV/JSONL 双格式,便于后续导入 Notion、Excel 或其他媒体管理工具
  • 容错设计:延迟、重试、超时参数可调,降低因反爬导致的失败率
  • 正则驱动:不依赖特定 DOM 结构,通过 data-target-link 属性定位,一定程度抵御前端微调

潜在局限

  • 脆弱性:明确声明为"best-effort HTML scraping",若 Letterboxd 大幅改版需人工维护正则
  • 公开数据限制:无法获取私密清单或用户收藏、评分等关联数据
  • 速率敏感:延迟过低可能被临时封禁 IP,过高则拉取效率下降
  • 无增量同步:全量爬取,不支持差异更新

适合人群

  • 需要备份个人 Letterboxd 清单的影迷
  • 希望将待看片单导入第三方工具(Plex、Trakt、Notion)的自动化用户
  • 数据归档研究者,需批量获取公开片单元数据

常规风险

  • 服务条款:Letterboxd 未公开 robots.txt 爬取政策,存在账号连带风险(若后续需登录其他功能)
  • 数据一致性:用户实时增删影片期间爬取,可能产生中间状态
  • 维护成本:依赖非官方接口,长期稳定性存疑

技术细节

  • 用户名验证:[A-Za-z0-9_-]+
  • 终止条件:首页无影片海报链接即停止
  • 输出字段:title(片名)、link(影片详情页 URL)

Letterboxd Watchlist 内容

scripts文件夹
手动下载zip · 2.8 kB
scrape_watchlist.pytext/plain
请选择文件