php YouTube视频下载

cnh2zyt3  于 2023-10-15  发布在  PHP
关注(0)|答案(1)|浏览(113)

如何通过URL下载不同格式的YouTube视频?我想把这个功能放在我的网站上给我的用户。他们可以从YouTube下载视频或MP3。我正在寻找一个WordPress插件。

jdgnovmf

jdgnovmf1#

想想YouTube DL。以下是链接:https://github.com/ytdl-org/youtube-dl这里有很多机会可以在Java、Python和其他语言中使用这个框架。代码看起来像:

import java.io.File;
import java.io.IOException;

import com.sapher.youtubedl.YoutubeDL;
import com.sapher.youtubedl.YoutubeDLException;
import com.sapher.youtubedl.YoutubeDLRequest;
import com.sapher.youtubedl.YoutubeDLResponse;

public class TestingFunctions {

    public static void main(String[] args) throws InterruptedException, YoutubeDLException {

            YoutubeDL.setExecutablePath("/usr/local/Cellar/youtube-dl/2017.09.15/bin/youtube-dl");
        try {

            functionTotest("https://www.youtube.com/watch?v=DECxluN8OZM");

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void functionTotest(String url) throws IOException, InterruptedException, YoutubeDLException {

        File a = new File("a.mp3");
        if (a.exists()) {
            a.delete();
        }

        // This is the command to run

        String videoUrl = url;
        String directory = System.getProperty("user.dir");

        YoutubeDLRequest request = new YoutubeDLRequest(videoUrl, directory);

        request.setOption("no-mark-watched");
        request.setOption("ignore-errors");
        request.setOption("no-playlist");
        request.setOption("extract-audio");
        request.setOption("audio-format \"mp3\"");
        request.setOption("output \"a.%(ext)s\"");

        YoutubeDLResponse response = YoutubeDL.execute(request);

        String stdOut = response.getOut();

        System.out.println(stdOut);
        System.out.println("File downloaded!");

    }

}

注意:这只是YouTube dl的代码示例,我不保证它能工作

相关问题