Аудио/видео вконтакте

Discussion in 'PHP' started by КИНГ, 15 Mar 2008.

  1. КИНГ

    КИНГ Elder - Старейшина

    Joined:
    13 Jun 2006
    Messages:
    129
    Likes Received:
    25
    Reputations:
    -1
    Есть скрипты для скачки аудио/видео вконтакте?
     
    3 people like this.
  2. Shawn1x

    Shawn1x Elder - Старейшина

    Joined:
    24 Aug 2007
    Messages:
    307
    Likes Received:
    536
    Reputations:
    13
    Описание:
    Скрипт для GreaseMonkey или браузера Opera
    Добавляет около кнопок прослушивания музыки ссылку для скачивания и ссылку для быстрого поиска слов песни.
    Для работы нужен Firefox с установленным дополнением GreaseMonkey или Opera.
    Если вы используете Opera, то полученный файл надо будет сохранить в тот каталог, который выбран в “Tools > Preferences > Advanced > Content > JavaScript option > User JavaScript files”


    Скрипт:
    HTML:
    // ==UserScript==
    // @name vkontakte music download
    // @namespace http://vkontakte.net.ru
    // @description Music download for vkontakte.ru
    // @include http://vkontakte.ru/*
    // ==/UserScript==
    
    
    function addDownload(img) {
    var str="";
    if (img.wrappedJSObject) {
    str=img.wrappedJSObject.onclick.toString();
    } else {
    str=img.onclick.toString(); //opera workaround
    }
    var re=/operate\((\d+)[^0-9]+(\d+)[^0-9]+(\d+),[^0-9a-zA-Z]+([0-9a-zA-Z]+)/;
    var arr=re.exec(str);
    //operate(209145,1044,362847,'db5a6cba31',194);
    //http://cs1044.vkontakte.ru/u362847/audio/db5a6cba31.mp3
    var td=img.parentNode;
    var addon=document.createElement("a");
    var user=arr[3];
    if (user<100000) {
    user=parseInt(user)+100000;
    user=(user.toString()).substr(1);
    }
    addon.setAttribute("href","http://cs"+arr[2]+".vkontakte.ru/u"+user+"/audio/"+arr[4]+".mp3");
    addon.innerHTML="download";
    td.appendChild(addon);
    }
    
    function addDownloads() {
    var imgs=document.getElementsByTagName("img");
    
    for (var i=0;i<imgs.length;i++) {
    if (imgs[i].className=="playimg") {
    addDownload(imgs[i]);
    }
    }
    }
    
    function addLyric(span) {
    var title=span.innerHTML;
    if (span.getElementsByTagName("a").length>0) {
    title=span.getElementsByTagName("a")[0].innerHTML;
    }
    var parent=span.parentNode;
    var artb=parent.getElementsByTagName("b")[0];
    var artist=artb.innerHTML; 
    if (artb.getElementsByTagName("a").length>0) {
    artist=artb.getElementsByTagName("a")[0].innerHTML;
    }
    var newdiv=document.createElement("div");
    var addon=document.createElement("a");
    // addon.setAttribute("href","http://lyrc.com.ar/en/tema1en.php?artist="+artist+"&songname="+title);
    addon.setAttribute("href","http://www.lyricsplugin.com/wmplayer03/plugin/?artist="+encodeURIComponent(artist)+"&title="+encodeURIComponent(title));
    addon.setAttribute("target","_blank");
    addon.innerHTML="lyrics";
    newdiv.appendChild(addon);
    newdiv.className="duration";
    parent.parentNode.appendChild(newdiv);
    }
    
    function addLyrics() {
    var spans= document.getElementsByTagName("span");
    re=/title\d+/;
    for (var i=0;i<spans.length;i++) {
    if (re.test(spans[i].id)) {
    addLyric(spans[i]);
    }
    }
    }
    
    addLyrics();
    addDownloads(); 
    Сохрани в vkontakte.music.js
     
    1 person likes this.
  3. КИНГ

    КИНГ Elder - Старейшина

    Joined:
    13 Jun 2006
    Messages:
    129
    Likes Received:
    25
    Reputations:
    -1
    а есть версия для установки на сайт? чтобы все могли пользоваться
     
  4. avton0m

    avton0m Elder - Старейшина

    Joined:
    15 Dec 2007
    Messages:
    35
    Likes Received:
    8
    Reputations:
    -4
    почему даже не "как сделать?" а у "кого есть?"??
    Тебя что, с гугла забанили?
     
  5. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
  6. ZET36

    ZET36 Elder - Старейшина

    Joined:
    8 Oct 2007
    Messages:
    250
    Likes Received:
    49
    Reputations:
    0
    хых а я по старинке

    Пуск->Панель управления -> Диспечер Звуковых устройств -> Вход S/PDIF
    меняю на "Цифровой и аналоговый вход"

    потом запускаю
    Пуск->Все программы->Стандартные->Развлечения->Звукозапись
    и тупо записываю все звуки которые сейчас воспроизводятся на звуковухе

    к стати этим методом можно вытаскивать музыку из флешек да вообще из всего что воспроизводится но не сохраняется, даже из игр итд

    К стати на счёт медота с Оперой, можно сделать гораздо легче

    земем в D:\Documents and Settings\Имя юзера\Application Data\Opera\Opera\profile\cache4
    и вот он весь сохранённый кеш
     
    #6 ZET36, 31 May 2008
    Last edited: 31 May 2008
    1 person likes this.
  7. PEPSICOLA

    PEPSICOLA . . . . . 2L . . . . .

    Joined:
    14 Oct 2004
    Messages:
    1,025
    Likes Received:
    823
    Reputations:
    368
    Это не лучший метод. - Допустим играет файл (ты не знаешь в каком bitrate)
    Записывая его в wav, придётся пережимать в mp3, а это потеря качества, то есть ещё хуже чем уже сжатый оригинал.

    К стати на счёт медота с Оперой, можно сделать гораздо легче

    Да, я тормознул малость :)))
     
    3 people like this.
  8. PiNzit

    PiNzit Elder - Старейшина

    Joined:
    14 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    аналогично и для всех дургих браузеров, тока вот директрии с кешем ясен пень в другом месте