refaltor/youtube-downloader
最新稳定版本:1.0.3
Composer 安装命令:
composer require refaltor/youtube-downloader
包简介
A PHP library for downloading YouTube videos and extracting metadata.
README 文档
README
A PHP library for downloading YouTube videos and extracting metadata with ease.
Installation
To use this package, you'll need the following prerequisites:
- PHP 8.0 or higher
- youtube-dl or yt-dlp installed and accessible from the command line.
- FFmpeg installed and accessible from the command line.
Install the package via Composer
Run the following command to add the package to your project:
composer require refaltor/youtube-downloader
Getting Started
Basic Usage
Below is an example of how to use the package to download a YouTube video:
<?php require 'vendor/autoload.php'; use Refaltor\YoutubeDownloader\Youtube; try { // Initialize the YouTube downloader $downloader = new Youtube( outputPath: '/absolute/path/to/store/videos/', // Directory to save the video videoUrl: 'https://www.youtube.com/watch?v=example' // URL of the YouTube video ); // Start the download $downloadedFile = $downloader->download(); echo "Video downloaded successfully: " . $downloadedFile; } catch (Exception $e) { echo "Error: " . $e->getMessage(); }
Customizing Paths
You can customize the paths for FFmpeg and youtube-dl (or yt-dlp) during initialization:
<?php require 'vendor/autoload.php'; use Refaltor\YoutubeDownloader\Youtube; try { $downloader = new Youtube( outputPath: '/absolute/path/to/store/videos/', ffmpegPath: '/custom/path/to/ffmpeg', youtubeDlPath: '/custom/path/to/youtube-dl' ); // Set the video URL dynamically $downloader->setVideoUrl('https://www.youtube.com/watch?v=example'); $downloadedFile = $downloader->download(); echo "Video downloaded successfully: " . $downloadedFile; } catch (Exception $e) { echo "Error: " . $e->getMessage(); }
Exception Handling
The download method will throw an exception in the following cases:
- The video URL is not provided.
- The output directory is invalid or cannot be created.
- The download process fails.
Make sure to catch exceptions and handle errors appropriately:
<?php require 'vendor/autoload.php'; use Refaltor\YoutubeDownloader\Youtube; try { $downloader = new Youtube( outputPath: '/absolute/path/to/store/videos/' ); $downloader->setVideoUrl('https://www.youtube.com/watch?v=example'); $downloadedFile = $downloader->download(); echo "Video downloaded successfully: " . $downloadedFile; } catch (Exception $e) { echo "Error: " . $e->getMessage(); }
统计信息
- 总下载量: 50
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-01-12