嵌入代码时如何将 `--get-url` 标志传递给 youtube-dl 或 yt-dlp

5th*_*5th 3 youtube-dl yt-dlp

有没有办法只在使用 python 代码中嵌入的 youtube-dl 或 yt-dlp 时获取 url?

似乎这--get-url不在YoutubeDL班级的可用选项中。

我尝试了我认为所有合乎逻辑的方式来通过,--get-url例如geturl,,,,...getUrlget_url

既然可执行文件可以做到这一点,那么一定有一种方法。我想对其进行“逆向工程”,但代码执行顺序有点难以跟踪,因为我不太了解 python。

5th*_*5th 6

好吧,我想我发现了,我认为这是这样做的预期方式。

我只是认为我应该能够直接传递相同的标志作为类选项,因为它们中的大多数具有相同的名称,结果--get-url只是一个“别名”:

options = {
  "quiet":    True,
  "simulate": True,
  "forceurl": True,
}
Run Code Online (Sandbox Code Playgroud)

你懂得越多。

另外,您可以使用extract_info(url)代替download([url]),如下所示:

with youtube_dl.YoutubeDL(options) as ytdl:
  info = ytdl.extract_info("https://twitter.com/MissMikkaa/status/1568324392953827328")
  url = info["url"]
Run Code Online (Sandbox Code Playgroud)

希望它将来可以帮助其他人:)