Як експортувати свої списки відтворення на YouTube?


43

YouTube любить періодично видаляти відео, які є в моєму списку обраних:

попередження про видалені відео

Але вони відмовляються сказати мені, що вони були, щоб я міг знайти інший примірник.

Я хотів би експортувати свої списки відтворення на YouTube, щоб я можу періодично розминати їх і вручну знаходити інші копії видалених пісень.

Як я можу експортувати свої списки відтворення (або список відтворення) з YouTube?


1
Чомусь перегляд списку відтворення на телефоні Android все одно отримає назви видалених відео!

Відповіді:


18

Наскільки мені відомо, на Youtube не існує побудованого способу зробити це.

Звичайно, ви можете скористатись API API, щоб легко отримати всі свої списки відтворення у форматі XML за допомогою наступного:

https://gdata.youtube.com/feeds/api/users/ evidenceYOUR_USER_NAMESense/playlists?v=2

Приклад: https://gdata.youtube.com/feeds/api/users/oisinorion/playlists?v=2

Цей XML-файл матиме унікальні ідентифікатори для кожного зі списків відтворення, за допомогою яких ви зможете отримати детальну інформацію про кожен список відтворення, включаючи URL-адреси та назви відео. Наступний виклик API знову надасть вам файл xml:

https://gdata.youtube.com/feeds/api/playlists/ evidenceUNIQUE_IDSense?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


2
Здається, що за замовчуванням повертаються лише перші 25 елементів. Ви можете додати max-results=xдо URL-адреси, але x> 50 відхилено. Додати start-index=...для підкачки результатів.
lunakid

2
Ця відповідь видається застарілою. API API зараз 3.0.
Джей М

15

А як нам зробити це простіше ...

Перейдіть за адресою : http://www.williamsportwebdeveloper.com/FavBackUp.aspx

Введіть у список відтворення-URL, який ви хочете створити у форматі excel, ось і все :)

Ось попередній перегляд того, як це виглядає. Експортував мій список короткометражних фільмів, який, на жаль, не вистачає кредитів, щоб розмістити 2 посилання введіть тут опис зображення

Творець: "Моя веб-програма - це використання API розробника YouTube для отримання даних каналу. Ви можете зробити те ж саме, але це було б у складному форматі XML і не дуже читабельному. Я думаю, що більшість людей воліє це в електронній таблиці Excel. Якщо у вас немає Microsoft Office, ви можете завантажити Open Office безкоштовно. "


1
Це працює для всіх плейлистів, крім улюблених та сподобалось.
tobylane

ДЯКУЄТЬСЯ ТАКОЖ, я шукав будь-який спосіб зробити це протягом 2 днів, і є стільки застарілих лайна в мережі, пов'язаних з цим. Цей сайт працював чудово. (лише трохи повільно, але все ж <2 дні!) @tobylane Likedбув єдиним списком, який мене зацікавив, і він працював чудово.
ashleedawg

@tobylane працює для обраних. Я не перевіряв це на сподобалось.
Парадокс Фермі

9

У світлі депресії 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


7

Це не найвишуканіший спосіб здійснити те, що ви просите, але ось ручний метод, який я щойно робив для цього. Оскільки я використовую Powershell для частини цього, я припускаю, що ви на машині Windows.

Кроки:

  1. Перейдіть до Google Takeout
  2. На сторінці "Завантажити свої дані" зніміть прапорець усе, крім Youtube
  3. Розгорніть Youtube і виберіть "Вибрати конкретні дані" під "Дані YouTube", потім натисніть кнопку "Дані YouTube" і виберіть лише "Списки відтворення", потім змініть спадне меню "Підписки" на "JSON", а потім натисніть кнопку Далі
  4. Завантажте свої дані Takeout, коли вони будуть готові, і розпакуйте їх куди завгодно
  5. Відкрийте сеанс Powershell та виконайте наведені нижче твердження

Якщо припустити, що ваш список відтворення вибраний, Ви отримаєте 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 }

Вуаля, насолоджуйся.


Здається, приватні списки відтворення не експортуються (мені лише сподобалось "переглянути пізніше", а щось інше, що не було у списку відтворення, якого я шукав)
polynomial_donut

Це здається досить дивним, також розчаровує. Можливо, параметри API в інших відповідях - єдине реальне рішення.
Ремі Ламберт


3

Ви можете це зробити з нового сайту, який ми розробили https://www.tunemymusic.com/

Ви можете експортувати з Youtube конкретний список відтворення, усі свої списки відтворення, а також усі сподобалися відео. Потім ви можете експортувати його у вільний текстовий файл.

На додаток до текстового файлу, ми зараз працюємо над додаванням опцій для експорту у файли csv та m3u


Я помістив у нього URL-адресу відтворення на YouTube, і нічого не сталося.
TIX BRANCO

2

На сьогоднішній день існує багато рішень, які роблять навіть більше того, що ви просили:

  • http://www.playlist-converter.net/ - Перетворіть свій список відтворення з декількох музичних служб та форматів файлів

  • https://sourceforge.net/projects/youtubeexport/ - Ця програма використовується для експорту списків відтворення YouTube до текстових чи .html-файлів

  • https://soundiiz.com/ - Завантажуйте списки відтворення з файлів, веб-URL-адрес чи звичайного тексту, передавайте вибране між усіма потоковими платформами, завантажуйте у всі популярні формати файлів

Але, на мою думку, найефективнішим та елегантним рішенням буде просто використовувати youtube-dl, оскільки за допомогою однієї єдиної команди типу (яку ви можете легко створити самостійно, переглянувши документи) ви можете завантажити ВСІ ваші заголовки елементів плейлистів (ну не лише заголовки, якщо вас турбувало ...), ввівши в якості параметра URL-адресу YouTube на сторінку, де відображаються всі ваші списки відтворення (наприклад, https://www.youtube.com/user/your_user_name/playlists ). Крім того, він також має можливість робити аутентифіковані запити на YouTube (за допомогою ваших облікових даних), щоб він також міг завантажувати ваші приватні списки відтворення .


1

Ви можете зробити закладку у своєму браузері, щоб зафіксувати опис кожного відео у списку, а потім надрукувати їх у текстовій області.

Наприклад, цей сценарій створить список із 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 ="


-1

Що я зробив, це перейти до свого списку відтворення та правою кнопкою миші натиснути ім’я мого списку відтворення, а потім вибрати «електронний лист із Windows Live». Він надсилає посилання на вашу електронну пошту, і коли ви натискаєте на неї, ви маєте весь список відтворення.


1
потім YouTube видаляє відео зі свого списку відтворення, а потім ви знову відвідуєте посилання електронної пошти, і ви переходите до того списку відтворення, де відео зараз відсутнє, знаєте? ;)
jj_

-3

Чому б вам просто не відкрити список відтворення і скопіювати / вставити його в Excel, Word чи інше? Це не зовсім елегантно, але інформація є як резервна копія.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.