답변:
내가 아는 한, 유튜브에는이 작업을 수행 할 수있는 방법이 없습니다.
물론 Youtube API를 사용하여 다음을 사용하여 모든 재생 목록을 xml로 쉽게 가져올 수 있습니다.
https://gdata.youtube.com/feeds/api/users/[YOUR_USER_NAME]/playlists?v=2
예 : https://gdata.youtube.com/feeds/api/users/oisinorion/playlists?v=2
해당 xml 파일에는 각 재생 목록에 대한 고유 한 ID가 있으며, 동영상 URL 및 제목을 포함하여 각 재생 목록에 대한 세부 정보를 얻는 데 사용할 수 있습니다. 다음 API 호출은 다시 XML 파일을 제공합니다.
https://gdata.youtube.com/feeds/api/playlists/[UNIQUE_ID]?v=2
예 : https://gdata.youtube.com/feeds/api/playlists/D5F03C2BE1AA3E7E?v=2
그러나 이러한 XML 파일을 수동으로 작업하는 것은 악몽입니다. XML 파일에서 관련 정보를 가져 와서 표시하기 위해 작은 웹 응용 프로그램을 작성하는 것이 가장 좋습니다 (약간의 웹 프로그래밍을 알고있는 경우).
API에 대한 자세한 내용은 https://developers.google.com/youtube/2.0/developers_guide_protocol_playlists를 참조 하십시오.
max-results=x
URL에 추가 할 수 있지만 x> 50은 거부됩니다. start-index=...
결과를 페이징하기 위해 추가하십시오 .
우리는 이것을 더 쉽게 만드는 것은 어떻습니까 ..
http://www.williamsportwebdeveloper.com/FavBackUp.aspx로 이동 하십시오.
엑셀 형식으로 만들려는 재생 목록 URL을 넣으십시오.
미리보기는 다음과 같습니다. 크레딧이 부족하여 2 개의 링크를 게시 할 수없는 단편 영화 재생 목록을 내보냈 습니다.
제작자 : '내 웹 애플리케이션은 모두 YouTube 개발자의 API를 사용하여 피드 데이터를 가져옵니다. 당신도 똑같이 할 수는 있지만 복잡한 XML 형식으로 읽을 수는 없습니다. 나는 대부분의 사람들이 오히려 Excel 스프레드 시트에 그것을 가지고 있다고 생각합니다. Microsoft Office가없는 경우 Open Office를 무료로 다운로드 할 수 있습니다. '
Liked
은 내가 관심을 가진 유일한 목록이었으며 완벽하게 작동했습니다.
v2가 더 이상 사용되지 않기 때문에 현재 답변이 더 이상 작동하지 않습니다. v3은 새로운 버전입니다.
문서 링크-https: //developers.google.com/youtube/v3/docs/playlistItems/list
결과는 50 개로 제한됩니다. 다음을 작성하십시오
링크 예-https: //www.googleapis.com/youtube/v3/playlistItems ? part=contentDetails&maxResults=50&pageToken=NNNNN&playlistId=PLXxxx=key=yyyy
이것은 당신이 요구하는 것을 성취하는 가장 우아한 방법은 아니지만, 내가 방금했던 수동 방법이 있습니다. 이 부분에 Powershell을 사용하고 있기 때문에 Windows 컴퓨터를 사용한다고 가정합니다.
단계 :
재생 목록이 즐겨 찾기라고 가정하면 Favorites.json이 표시됩니다. 재생 목록에있는 각 비디오의 제목과 링크를 YoutubeFavorites.txt라는 텍스트 파일로 원한다고 가정 해 보겠습니다.
$json = ConvertFrom-Json (Get-Content .\Favorites.json -Raw)
foreach ($vid in $json) { "$($vid.snippet.Title) - Link: https://www.youtube.com/watch?v=$($vid.contentDetails.videoId)" | Out-File -FilePath .\YoutubeFavorites.txt -Append }
짜잔, 즐기세요.
이 문제를 해결하기 위해 www.recovermy.video 라는 서비스를 만들었습니다 . 다른 질문에 대한 내 대답을 참조하십시오 .
https://www.tunemymusic.com/에서 개발 한 새 사이트에서이를 수행 할 수 있습니다.
Youtube에서 특정 재생 목록, 모든 재생 목록 및 모든 좋아하는 비디오 내보내기를 선택할 수 있습니다. 그런 다음 무료 텍스트 파일로 내보낼 수 있습니다.
텍스트 파일 외에도 csv 및 m3u 파일로 내보내기위한 옵션 추가 작업을 진행하고 있습니다.
요즘에는 요청한 것보다 훨씬 많은 솔루션이 있습니다.
http://www.playlist-converter.net/- 여러 음악 서비스 및 파일 형식에서 재생 목록을 변환
https://sourceforge.net/projects/youtubeexport/- 이 프로그램은 YouTube 재생 목록을 텍스트 또는 .html 파일로 내보내는 데 사용됩니다
https://soundiiz.com/- 파일, 웹 URL 또는 일반 텍스트에서 재생 목록을 업로드하고 모든 스트리밍 플랫폼간에 즐겨 찾기를 전송하고 모든 인기있는 파일 형식으로 다운로드
그러나 가장 효율적이고 우아한 해결책 은 youtube-dl을 사용 하는 것입니다. (문서를보고 쉽게 만들 수있는) 하나의 명령으로 모든 재생 목록 항목 제목을 다운로드 할 수 있기 때문입니다. 제목이있는 경우 ...), 모든 재생 목록을 표시하는 페이지에 YouTube URL을 매개 변수로 입력하여 (예 : https://www.youtube.com/user/your_user_name/playlists ) 또한 자격 증명을 사용하여 YouTube에 인증 된 요청을 할 수있는 옵션도 제공되므로 비공개 재생 목록을 다운로드 할 수도 있습니다 .
브라우저에서 Bookmarklet 을 만들어 목록의 각 비디오에 대한 설명을 찾은 다음 텍스트 영역에 모두 인쇄 할 수 있습니다.
예를 들어이 스크립트는 URL과 비디오 이름이 포함 된 목록을 만듭니다. 북마크를 만들고 북마크의 주소 (URL)에 다음 스크립트를 추가하기 만하면됩니다.
javascript:var Description = "Export YouTube playlists. This script is in the Public Domain - created at: 2016-11-21";
function printline(myLine) {
document.write(myLine+"\n");
};
function showlinks() {
var today = new Date();
var day = today.getDate();
var month = today.getMonth()+1;
var year = today.getFullYear();
document.write("<html><head><title>YouTube list: " + Title + "</title></head><body>");
printline("<textarea name='Links' rows='55' cols='200'>");
printline(year + "-" + month + "-" + day);
printline(Title +"\n"+url);
printline("");
for (i=0; i<lines.length; i++) printline(lines[i]);
printline("</textarea>");
document.write("</body></html>");
};
var url = document.URL;
var body = document.body.innerHTML;
var lines = [];
if (url.match(/youtube.com/)) {
var x = body.match(/data-list-title=.*/)[0];
var x = x.replace(/.*data-list-title="/, '');
var Title = x.replace(/".*/, '');
var body = body.replace(/data-video-id="/g, 'data-video-id="https://www.youtube.com/watch?v=');
if (body.match(/li class=.yt-uix-scroller-scroll-unit/)) {
var matches = body.match(/li class=.yt-uix-scroller-scroll-unit.*/g);
for(i=0; i<matches.length; i++) {
var x = matches[i];
var ID = x.replace(/.*data-video-id=./, "");
var ID = ID.replace(/".*/, "");
var VName = x.replace(/.*data-video-title=./, "");
var VName = VName.replace(/".*/, "");
var x = VName;
var x = ID + "\t" + VName;
lines.push(x);
};
};
};
showlinks();
동영상의 URL을 원하지 않으면 "var x = ID +"\ t "+ VName;"줄을 삭제하면됩니다. (36 행)
이 스크립트는 YouTube가 HTML 페이지의 형식을 변경할 때까지 잠시 동안 작동해야합니다. 그들이 그렇게 할 때, 당신은 그에 따라 스크립트를 조정해야 할 것입니다. 아마도 "data-video-title ="대신 다른 것을 검색해야 할 것입니다