如何使用 youtube-dl 以相反的顺序获取播放列表索引?

问题描述 投票:0回答:1

有一个包含 3012 个视频的播放列表。我想下载这个播放列表的前 100 个视频,实际上是最近的 100 个视频,所以我希望

%(playlist_index)s
从 3012 开始到 2913,而不是从 1 到 100。

我现在拥有的只是一个基本的 shell 脚本:

youtube-dl --yes-playlist "www.youtube.com/playlist?list=3xAMpLe_iD" -o "%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s" --download-archive archive.txt

我想反向跟踪视频顺序,因为下周可能会有 4 个新视频,那么当我下载这些视频时,编号应该是 3016 到 3013,因为它将来自同一个播放列表。

我没有使用 youtube-dl python 脚本的经验,但你可能会回答,就好像我了解基础知识一样。另外,如何在同一脚本中获取以

--download-archive
值命名的
%(playlist)s
文件?

python youtube youtube-dl
1个回答
4
投票

有多种方法可以做到这一点。

首先解决你的反向问题:
有一个参数

--playlist-reverse

它将使用列表理解
[::-1]
来反转。然后,这将以相反的顺序下载文件。
但是,即使您使用
%(playlist_index)s
,我也不确定它是如何存储的。
它可能会以
3012
开始下载,但这应该是索引,它将存储为
3012
但我还没有测试过。
因此,您可能需要使用
%(autonumber)s
,因为它会根据队列顺序对曲目进行编号。请注意,它将从 1 开始编号。
为了避免这种情况,您可以使用
--autonumber-start

指定起始编号

现在解决你的第二个问题 - 从正确的点开始。

--playlist-start

但你必须明确告诉从哪里开始。在你的情况下
3012

--playlist-end

您必须再次准确指定它。在你的情况下
2913

最终,
--playlist-items
这可能就是您所寻找的。

所以你的命令看起来像这样

youtube-dl --yes-playlist "www.youtube.com/playlist?list=3xAMpLe_iD" -o "%(playlist)s/%(autonumber)s - %(title)s.%(ext)s" --autonumber-start 3012 --playlist-items 100 --download-archive archive.txt

让我知道它是否有效并执行您想要的操作。

© www.soinside.com 2019 - 2024. All rights reserved.