在 youtube-dl 中添加自定义 HTTP header 以强制提取直接 link 文件不打开,但下载
Add custom HTTP header in youtube-dl to force extracted direct link to file not to open, but download
我需要添加自定义 HTTP header 以通过 youtube-dl 将 link 直接提取到文件中,以便在浏览器中单击后不会打开,但会下载。我打算使用 this answer, but there might be easier solution. There is a option in youtube-dl Workarounds 的解决方案:
--add-header FIELD:VALUE Specify a custom HTTP header and its value, separated by a colon ':'. You can use this option multiple times
我的问题是什么 header 在终端中写为 FIELD 和 VALUE 以强制直接 link 默认下载文件。
youtube-dl -g --add-header FIELD:VALUE https://www.youtube.com/watch?v=9Q7Vr3yQYWQ
编辑:
为了更好地解释我要完成的任务,我从服务器上的应用程序执行以下命令:
youtube-dl -g URL
和return输出,什么是直接link到视频文件,到客户端供用户下载。问题是默认情况下,浏览器会打开文件但不会开始下载。通过更改文件的 header ,您可以强制浏览器下载。我的问题是,如果它也适用于直接 links,如果适用,如何在 youtube-dl 脚本中添加 header 以强制 link 触发下载。
HTML 5 只适用于 Chrome 和 Firefox 的解决方案不够好。
<a href="url" download="filename"></a>
取自this youtube-dl issue。对于 non-dash 格式(例如,如果您在调用 youtube-dl 时使用 -f best
),如果您将 &title=something
添加到 url,您将获得 youtube-dl服务器将以下 header 添加到响应中:Content-Disposition: attachment; filename="something.mp4"
,强制浏览器将其下载为 something.mp4
.
我需要添加自定义 HTTP header 以通过 youtube-dl 将 link 直接提取到文件中,以便在浏览器中单击后不会打开,但会下载。我打算使用 this answer, but there might be easier solution. There is a option in youtube-dl Workarounds 的解决方案:
--add-header FIELD:VALUE Specify a custom HTTP header and its value, separated by a colon ':'. You can use this option multiple times
我的问题是什么 header 在终端中写为 FIELD 和 VALUE 以强制直接 link 默认下载文件。
youtube-dl -g --add-header FIELD:VALUE https://www.youtube.com/watch?v=9Q7Vr3yQYWQ
编辑: 为了更好地解释我要完成的任务,我从服务器上的应用程序执行以下命令:
youtube-dl -g URL
和return输出,什么是直接link到视频文件,到客户端供用户下载。问题是默认情况下,浏览器会打开文件但不会开始下载。通过更改文件的 header ,您可以强制浏览器下载。我的问题是,如果它也适用于直接 links,如果适用,如何在 youtube-dl 脚本中添加 header 以强制 link 触发下载。
HTML 5 只适用于 Chrome 和 Firefox 的解决方案不够好。
<a href="url" download="filename"></a>
取自this youtube-dl issue。对于 non-dash 格式(例如,如果您在调用 youtube-dl 时使用 -f best
),如果您将 &title=something
添加到 url,您将获得 youtube-dl服务器将以下 header 添加到响应中:Content-Disposition: attachment; filename="something.mp4"
,强制浏览器将其下载为 something.mp4
.