我正试着快速批量下载Youtube视频。我创建了一个文件videos.txt,其中每行有一个视频链接:
http://www.youtube.com/watch?v=**********
http://www.youtube.com/watch?v=**********
http://www.youtube.com/watch?v=**********
...
我有一个shell脚本可以下载视频:
cat videos.txt | while read line; do
echo $line
youtube-dl $line
done
但是,我希望通过将每个youtube-dl
命令分支到它自己的进程/终端窗口来加快进程的速度。如何为每个youtube-dl命令创建一个新的终端窗口/进程?
注意:我尝试过用youtube-dl
命令的前面加上/bin/bash -c
,但是脚本很不稳定.它不会下载所有的视频。
发布于 2011-12-27 19:50:31
更改这一行:
youtube-dl $line
至
youtube-dl $line &
&
在后台启动作业,允许父脚本继续。
但是,如果您有一个很长的urls列表要抓取,请小心。Youtube会因为你吸干他们的网站而皱眉,在你的系统上有太多的下载过程会使事情停止或彻底崩溃。
发布于 2011-12-27 19:55:39
Youtube有一节他们的服务条款(Youtube TOS,见5-B)专门禁止这样做。
https://stackoverflow.com/questions/8648592
复制相似问题