YouTube、Instagram、XなどからビデオをダウンロードするためのシンプルなPHPライブラリ。コバルトを搭載
コバルトを搭載
このライブラリは、コバルトの無料APIに依存しています。
pira/ytdlライブラリをインストールするには、Composerを使用する必要があります。次のコマンドを実行します。
composer require pira/ytdlライブラリをインストールした後、PHPプロジェクトで使用を開始できます。これが基本的な例です。
<?php
use pira YTDL ;
require_once ' vendor/autoload.php ' ;
try {
$ ytdl = new YTDL ( ' https://www.youtube.com/watch?v=OAr6AIvH9VY ' );
$ ytdl -> setQuality ( ' 480 ' );
$ response = $ ytdl -> sendRequest ();
print_r ( $ response );
} catch ( Exception $ e ) {
echo $ e -> getMessage ();
}__construct(string $url) YTDLクラスをURLで初期化します。
$url (string):リクエストで使用するURL。setQuality(string $quality): voidダウンロードのビデオ品質を設定します。
$quality (string):目的720ビデオ品質(例えば、 144 、 max )。Exception 。setFilenamePattern(string $pattern): voidダウンロードされたファイルのファイル名パターンを設定します。
$pattern (文字列):目的のファイル名パターン。利用可能なパターン:youtube_dQw4w9WgXcQ_640x360_h264.mp4youtube_dQw4w9WgXcQ_audio.mp3Video Title (360p, h264).mp4Audio Title - Audio Author.mp3Video Title (360p, h264, youtube).mp4Audio Title - Audio Author (soundcloud).mp3Video Title (360p, h264, youtube, dQw4w9WgXcQ).mp4Audio Title - Audio Author (soundcloud, 1242868615).mp3Exception 。setVCodec(string $codec): voidダウンロード用のビデオコーデックを設定します。
$codec (String):目的のビデオコーデック( h264 、 av1 、 vp9 )。Exception 。setAFormat(string $format): voidダウンロード用のオーディオ形式を設定します。
$format (string):目的のオーディオ形式(例: mp3 、 ogg 、 wav )。Exception 。enableAudioOnly(): voidオーディオのみをダウンロードできます。
enableTTFullAudio(): voidTiktokビデオからオリジナルのサウンドをダウンロードできるようにします。
enableAudioMuted(): voidビデオのダウンロードでオーディオトラックをミュートすることができます。
enableDubLang(): voidYouTubeビデオオーディオトラックにAccect-Languageヘッダーを使用できます。
enableDisableMetadata(): voidファイルメタデータを無効にします。
enableTwitterGif(): voidTwitter GIFを.gif形式に変換できるようにします。
enableTiktokH265(): voidTiktok向けの1080p H265ビデオを好むことができます。
setAcceptLanguage(string $language): voidリクエストにカスタムアセプションヘッダー値を設定します。
$language (String):Custom Accept-Language Header Value。sendRequest(): array設定された要求をAPIに送信し、応答を返します。
返品:
スロー:
Exception 。 | 鍵 | タイプ | 変数 |
|---|---|---|
status | string | error / redirect / stream / success / rate-limit / picker |
text | string | 主にエラーに使用されるさまざまなテキスト |
url | string | ファイルへの直接リンクまたはコバルトのライブレンダリングへのリンク |
pickerType | string | various / images |
picker | array | ピッカーアイテムの配列 |
audio | string | ファイルへの直接リンクまたはコバルトのライブレンダリングへのリンク |
出典:Cobalt APIドキュメント - 応答ボディ変数
アイテムタイプ: object
| 鍵 | タイプ | 変数 | 説明 |
|---|---|---|---|
type | string | video / photo / gif | pickerTypeがvarious場合にのみ使用されます |
url | string | ファイルへの直接リンクまたはコバルトのライブレンダリングへのリンク | |
thumb | string | ピッカーに表示されるアイテムサムネイル | videoおよびgifタイプに使用されます |
出典:Cobalt APIドキュメント - ピッカーアイテム変数
このリストは最終的なものではなく、時間の経過とともに拡大し続けます。
| サービス | ビデオ +オーディオ | オーディオのみ | ビデオのみ | メタデータ | リッチファイル名 |
|---|---|---|---|---|---|
| bilibili.com&bilibili.tv | ✅ | ✅ | ✅ | ➖ | ➖ |
| dailymotion | ✅ | ✅ | ✅ | ✅ | ✅ |
| Instagramの投稿とリール | ✅ | ✅ | ✅ | ➖ | ➖ |
| Facebookビデオ | ✅ | ➖ | ➖ | ||
| 織機 | ✅ | ✅ | ✅ | ➖ | |
| OKビデオ | ✅ | ✅ | ✅ | ✅ | |
| ✅ | ✅ | ✅ | ➖ | ➖ | |
| ✅ | ✅ | ✅ | |||
| rutube | ✅ | ✅ | ✅ | ✅ | ✅ |
| Snapchatのストーリーとスポットライト | ✅ | ✅ | ✅ | ➖ | ➖ |
| soundcloud | ➖ | ✅ | ➖ | ✅ | ✅ |
| ストリーミング可能 | ✅ | ✅ | ✅ | ➖ | ➖ |
| ティクトク | ✅ | ✅ | ✅ | ||
| tumblr | ✅ | ✅ | ✅ | ➖ | ➖ |
| Twitch Clips | ✅ | ✅ | ✅ | ✅ | ✅ |
| Twitter/x | ✅ | ✅ | ✅ | ➖ | ➖ |
| Vimeo | ✅ | ✅ | ✅ | ✅ | ✅ |
| ブドウのアーカイブ | ✅ | ✅ | ✅ | ➖ | ➖ |
| VKビデオとクリップ | ✅ | ✅ | ✅ | ✅ | |
| YouTubeビデオ、ショートパンツ、音楽 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 絵文字 | 意味 |
|---|---|
| ✅ | サポート |
| ➖ | 不可能/不合理 |
| サポートされていません |
出典:Cobalt-サポートされているサービス
| サービス | メモまたは機能 |
|---|---|
| リール、写真、ビデオをサポートしています。マルチメディアの投稿から保存するものを選択できます。 | |
| パブリックアクセス可能なビデオコンテンツのみをサポートします。 | |
| 写真、GIF、ビデオ、ストーリーをサポートしています。 | |
| GIFとビデオをサポートします。 | |
| snapchat | スポットライトとストーリーをサポートします。ストーリーから保存するものを選ぶことができます。 |
| rutube | Yappy&Private Linksをサポートします。 |
| soundcloud | プライベートリンクをサポートします。 |
| ティクトク | 透かしの有無にかかわらずビデオ、透かしのないスライドショーの画像、および完全な(オリジナル)オーディオをサポートしています。 |
| Twitter/x | マルチメディアの投稿から保存するものを選択できます。現在の管理により、100%信頼できない場合があります。 |
| Vimeo | オーディオのダウンロードは、ダッシュでのみ利用できます。 |
| YouTube | ビデオ、音楽、ショーツをサポートしています。 8K、4K、HDR、VR、およびハイFPSビデオ。リッチメタデータ&ダブ。 H264/AV1/VP9コーデック。 |
出典:Cobalt-サービスごとの追加メモまたは機能
必要なサービスのサポートが欠落している場合は、CobaltのGitHubリポジトリに問題(またはプルリクエスト?)を作成します。
このライブラリは、MITライセンスに基づいてライセンスされています。詳細については、ライセンスファイルを参照してください。
クエリや問題については、お問い合わせください。