我想使用以下方式从 YouTube 搜索查询下载视频youtube-dl
假设我想要搜索查询中的视频https://www.youtube.com/results?q=how+to+create+android+app+in+android+studio。
如何从 YouTube 以及其他视频网站下载基于查询的视频?这是我尝试过的方法,但出现了以下错误:
答案1
youtube-dl 有一个内置搜索选项。旧方法:
youtube-dl "gvsearch1:how to create android app in app studio"
参数为:gvsearchX
,其中gvsearch
表示使用 google,X
表示要下载的结果数。因此,上述命令将搜索“如何在 app studio 中创建 android 应用程序”并下载第一个结果。
(更新!)看来 ytsearch(youtube 搜索)现在是更好的方法:
youtube-dl "ytsearch1:how to create android app in app studio"
答案2
是的,可以通过 YouTube 上的搜索查询下载视频。
添加&page=1
到前一个查询允许下载完成。
https://www.youtube.com/results?search_query=how+to+create+android+app+in+android+studio&page=1
答案3
除了前面提到的使用 Google 视频搜索之外,gvsearch
您还可以直接在 YouTube 上搜索:
youtube-dl "ytsearch1:how to create android app in app studio"
我没有在任何记录中找到它,但最近一条错误消息为我指明了正确的方向。
答案4
对于音轨,您可能还会发现此脚本很有用,它可以读取纯文本文件的行(例如,作者和主题标题)并将其下载为 mp3:
#!/bin/bash
youtubedlaudio='youtube-dl --output "%(title)s.%(ext)s" --extract-audio --audio-format mp3 --audio-quality 0'
while IFS='' read -r line || [[ -n "$line" ]] && [[ -n "$line" ]]; do
$youtubedlaudio "ytsearch:$line" # Or with gvsearch1
done < "$1"