使用Java API下载YouTube视频?

4
我在Stack Overflow上找到了类似的问题,并尝试了一些解决方案。所有的方法都已过时,所以我正在提出一个新问题。
我尝试了以下方法: 如何在java中下载youtube视频? 我查看了youtube-api,但它并没有提供任何可以下载的东西,据我理解在Github提供的示例也是如此。

https://developers.google.com/youtube/v3/code_samples/java

我尝试使用最新的VGet API,它工作得很好,但是它会分别下载视频(mp4)和音频(webm)。我该如何将它们合并?
import com.github.axet.vget.VGet;

public class YoutubeDownloadTool {

    public static void main(String[] args) {
        try {
            String url = "https://www.youtube.com/watch?v=7lFhwXeSidQ";
            String path = "D:\\videos";
            VGet v = new VGet(new URL(url), new File(path));
            v.download();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
}

1
我认为YouTube的条款和条件明确禁止下载视频,这就是为什么它不在官方工具包中的原因。 - Fabian Bettag
1个回答

3

在Youtube API中不支持下载视频。事实上,它是被禁止的。根据服务条款 - II. 禁止行为中提到:

禁止行为

  1. 存储YouTube音视频内容的副本

  2. 故意使用YouTube API鼓励或促进版权侵犯或侵犯版权材料的利用;

此外,这个SO主题指出在Youtube页面条款中明确提到了:

"除非您在服务上看到“下载”或类似链接显示该内容,否则您不得下载任何内容。未经YouTube或内容相应许可方的事先书面同意,您不得复制、再生产、分发、传输、广播、展示、销售、许可或以其他方式利用任何内容"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接