如何基于添加日期筛选YoutubeDL播放列表中的视频?
解决按播放列表添加日期筛选视频的问题
首先明确:youtube-dl本身不支持抓取视频添加到播放列表的日期,这就是你执行
youtube-dl --skip-download --print-json <playlist_url> | jq keys查不到对应键的原因——它的数据源里根本没包含这个字段,自然没法用match-filter实现你要的类dateafter筛选功能。可行替代方案:使用yt-dlp(youtube-dl的活跃维护分支,功能更完备),它专门支持抓取
playlist_added_date字段,完美匹配你的需求:- 先确保已安装yt-dlp(通过系统包管理器或官方安装渠道即可完成)
- 先验证字段是否存在:
执行后会输出每个视频被添加到播放列表的日期(格式示例:yt-dlp --skip-download --print-json <playlist_url> | jq '.playlist_added_date'2024-05-20) - 用
match-filter实现日期筛选,比如要筛选2024年1月1日之后添加的视频:
若只需验证筛选结果、跳过下载,可追加yt-dlp --match-filter "playlist_added_date >= '2024-01-01'" <playlist_url>--skip-download参数:yt-dlp --skip-download --match-filter "playlist_added_date >= '2024-01-01'" <playlist_url>
补充说明:yt-dlp的
match-filter支持多种日期格式对比,只要和输出的playlist_added_date格式对应即可,比如也可以用YYYYMMDD格式:"playlist_added_date >= '20240101'"
内容的提问来源于stack exchange,提问作者Aniruddh
相关产品推荐
相关产品推荐

