1
47
af18e234-0cae-4a58-b05b-36abaedadd5b
https://api.friezy.ru/playlists/pls/DI.php
F38A68A9-EF1A-4862-972C-1E254946A010
4
Di.FM
245
af18e234-0cae-4a58-b05b-36abaedadd5b
93
42442,6494703009
200
1
500
int gnTotal=0,i;
string tmp;
// ----------------------------------------------------------------------------
void LoadPlaylist() {
string sData, sLink, sName, sImg, sLength; THmsScriptMediaItem Item;
// Если ссылка плейлиста начинается на http, то скачиваем, если нет - загружаем как локальный файл
if (LeftCopy(mpFilePath, 4)=='http') sData = HmsDownloadUrl(mpFilePath, '', true); // Загрузка плейлиста из интернета
else sData = HmsStringFromFile(mpFilePath); // Загрузка плейлиста с локального диска
sData = HmsUtf8Decode(sData); // Декодируем из UTF-8 кодировки
HmsRegExMatch('NumberOfEntries=(.*?)[\\r\\n]',sData,tmp); // Получаем кол-во элементов из плейлиста
gnTotal = StrToInt(tmp);
//Проходим по плейлисту в цикле от 1 до gnTotal
for (i=1; i<=gnTotal; i++) {
HmsRegExMatch3('File'+IntToStr(i)+'=(.*?)[\\r\\n]+Title'+IntToStr(i)+'=(.*?)[\\r\\n]+Length'+IntToStr(i)+'=(.*?)[\\r\\n]',sData,sLink,sName,sLength); // Получаем название, ссылку с premium ключом и длительность
HmsRegExMatch('Digitally Imported - (.*)', sName, sName); // Укорачиваем название до имени канала
// Пытаемся получить ссылку на картинку
sImg = 'http://wonky.lostcut.net/TVimg/'+HmsPercentEncode(sName, '"A-Z", "a-z", "0-9", "-", ".", "_", "~", "\'"')+'.png';
// Создаём ссылку
Item = HmsCreateMediaItem(sLink, FolderItem.ItemID);
Item[mpiTitle ] = sName; // Наименование
Item[mpiThumbnail] = sImg; // Картинка
Item[mpiTimeLength] = sLength; // Длительность
Item[mpiAlbum] = sName;
Item[mpiAuthor ] = 'DI.FM';
Item[mpiAlbumArtist] = 'DI.FM';
}
HmsLogMessage(1, mpTitle+': создано ссылок '+IntToStr(gnTotal));
}
///////////////////////////////////////////////////////////////////////////////
// Г Л А В Н А Я П Р О Ц Е Д У Р А //
// ----------------------------------------------------------------------------
{
FolderItem.DeleteChildItems(); // Удаляем созданные ранее ссылки
LoadPlaylist(); // Вызов процедуры загрузки плейлиста и создания из него ссылок
}
501
C++Script
55
http://i47.fastpic.ru/big/2013/0515/7e/1dab8d6b7d73add91256f869de86d57e.jpg
95
5