YouTube, Instagram, X 등에서 비디오를 다운로드하기위한 간단한 PHP 라이브러리. 코발트로 구동
코발트로 구동
이 라이브러리는 코발트의 무료 API에 의존합니다.
pira/ytdl 라이브러리를 설치하려면 작곡가를 사용해야합니다. 다음 명령을 실행하십시오.
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) URL로 YTDL 클래스를 초기화합니다.
$url (String) : 요청에 사용될 URL.setQuality(string $quality): void다운로드 비디오 품질을 설정합니다.
$quality (문자열) : 원하는 비디오 품질 (예 : 144 , 720 , max ).Exception .setFilenamePattern(string $pattern): void다운로드 된 파일의 파일 이름 패턴을 설정합니다.
$pattern (String) : 원하는 파일 이름 패턴. 사용 가능한 패턴 :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 비디오 오디오 트랙에 허용되는 헤더를 사용할 수 있습니다.
enableDisableMetadata(): void파일 메타 데이터를 비활성화 할 수 있습니다.
enableTwitterGif(): void트위터 gifs를 .gif 형식으로 변환 할 수 있습니다.
enableTiktokH265(): voidTiktok의 1080p H265 비디오를 선호 할 수 있습니다.
setAcceptLanguage(string $language): void요청에 대해 사용자 정의 허용 언어 헤더 값을 설정합니다.
$language (문자열) : 사용자 정의 수용 언어 헤더 값.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 | 파일에 직접 링크 또는 코발트의 라이브 렌더링 링크 |
출처 : 코발트 API 문서 - 응답 신체 변수
항목 유형 : object
| 열쇠 | 유형 | 변수 | 설명 |
|---|---|---|---|
type | string | video / photo / gif | pickerType various 경우에만 사용됩니다 |
url | string | 파일에 직접 링크 또는 코발트의 라이브 렌더링 링크 | |
thumb | string | 피커에 표시되는 항목 썸네일 | video 및 gif 유형에 사용됩니다 |
출처 : 코발트 API 문서 - 피커 항목 변수
이 목록은 최종적이지 않으며 시간이 지남에 따라 계속 확장됩니다.
| 서비스 | 비디오 + 오디오 | 오디오 만 | 비디오 만 | 메타 데이터 | 풍부한 파일 이름 |
|---|---|---|---|---|---|
| bilibili.com & bilibili.tv | ✅ | ✅ | ✅ | ➖ | ➖ |
| Dailymotion | ✅ | ✅ | ✅ | ✅ | ✅ |
| Instagram 게시물 및 릴 | ✅ | ✅ | ✅ | ➖ | ➖ |
| 페이스 북 비디오 | ✅ | ➖ | ➖ | ||
| 직조기 | ✅ | ✅ | ✅ | ➖ | |
| OK 비디오 | ✅ | ✅ | ✅ | ✅ | |
| ✅ | ✅ | ✅ | ➖ | ➖ | |
| 레딧 | ✅ | ✅ | ✅ | ||
| Rutube | ✅ | ✅ | ✅ | ✅ | ✅ |
| Snapchat 이야기 및 스포트라이트 | ✅ | ✅ | ✅ | ➖ | ➖ |
| SoundCloud | ➖ | ✅ | ➖ | ✅ | ✅ |
| 스트림 가능 | ✅ | ✅ | ✅ | ➖ | ➖ |
| Tiktok | ✅ | ✅ | ✅ | ||
| 텀블러 | ✅ | ✅ | ✅ | ➖ | ➖ |
| 트 위치 클립 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 트위터/x | ✅ | ✅ | ✅ | ➖ | ➖ |
| vimeo | ✅ | ✅ | ✅ | ✅ | ✅ |
| 포도 나무 아카이브 | ✅ | ✅ | ✅ | ➖ | ➖ |
| VK 비디오 및 클립 | ✅ | ✅ | ✅ | ✅ | |
| YouTube 비디오, 반바지 및 음악 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 이모티콘 | 의미 |
|---|---|
| ✅ | 지원 |
| ➖ | 불가능/불합리한 |
| 지원되지 않습니다 |
출처 : 코발트 - 지원되는 서비스
| 서비스 | 메모 또는 기능 |
|---|---|
| 인스 타 그램 | 릴, 사진 및 비디오를 지원합니다. 멀티미디어 게시물에서 저장할 내용을 선택할 수 있습니다. |
| 페이스 북 | 공개 액세스 비디오 콘텐츠 만 지원합니다. |
| 사진, GIF, 비디오 및 스토리를 지원합니다. | |
| 레딧 | GIF 및 비디오를 지원합니다. |
| Snapchat | 스포트라이트와 이야기를 지원합니다. 이야기에서 저장해야 할 사항을 선택할 수 있습니다. |
| Rutube | Yappy 및 개인 링크를 지원합니다. |
| SoundCloud | 개인 링크를 지원합니다. |
| Tiktok | 워터 마크 유무에 관계없이 비디오, 워터 마크가없는 슬라이드 쇼의 이미지 및 전체 (원래) 오디오를 지원합니다. |
| 트위터/x | 멀티미디어 게시물에서 저장할 내용을 선택할 수 있습니다. 현재 관리로 인해 100% 신뢰할 수 없습니다. |
| vimeo | 오디오 다운로드는 Dash에서만 사용할 수 있습니다. |
| YouTube | 비디오, 음악 및 반바지를 지원합니다. 8K, 4K, HDR, VR 및 높은 FPS 비디오. 풍부한 메타 데이터 및 더빙. H264/AV1/VP9 코덱. |
출처 : 코발트 - 서비스 당 추가 메모 또는 기능
원하는 서비스에 대한 지원이 누락 된 경우 Cobalt의 GitHub 저장소에서 문제 (또는 풀 요청?)를 작성하십시오.
이 라이브러리는 MIT 라이센스에 따라 라이센스가 부여됩니다. 자세한 내용은 라이센스 파일을 참조하십시오.
질문이나 문제는 다음과 같이 문의하십시오.