узнать прямую ссылку на youtube, redtube

Тема в разделе "PHP", создана пользователем ivashka, 10 ноя 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. ivashka

    ivashka

    Регистр.:
    16 май 2007
    Сообщения:
    151
    Симпатии:
    15
    Уже неделю ищу и безрезультатно...

    Как при помощи php узнать прямую ссылку на youtube, что бы можно было воспроизводить при помощи своего плеера на сайте, а не использовать youtube`овский...
    В частности больше интересует случай с redtube... Нашел программу, в которую вводиш линк на страницу с видео, а она сохраняет само видео, ну так как узнать прямую ссылку на flv?
     
  2. myweb

    myweb Среда обитания WEB

    Регистр.:
    10 сен 2007
    Сообщения:
    539
    Симпатии:
    246
    Похоже там нету доступа к файлу через веб, а плеер получает только идентификатор ролика

    Код:
    
     so.addVariable("id", "9124");
    
    
    неверное в самом плеере приписаны пути где брать файлы.

    // ---------------------------------------------------------------------------------

    Вот ищо нашол вариант:

    Как сохранить ролик с YouTube, который Вы только что просмотрели

    Да собственно он уже сохранен на Вашем компьютере, просто нужно найти его в кэше Вашего браузера.

    Я сортирую файлы кэша по времени модификации, смотрю на их размер, видео файлы, как правило, имееют достаточно большой размер, для лучшей достоверности просматриваю содержимое файлов претендентов, в котором можно увидеть ключевые слова FLV и YouTube (по крайней мере для файлов кэша FireFox), переименовываю их по своему желанию и присваиваю расширение FLV.

    Все, теперь пытаемся запустить наши файлы на просмотр в FLV Player’е, чтобы выяснить, где-же то, что мы искали.

    Такая простая - лобовая методика пригодится и для вытаскивания флэш (flash) файлов и т.п.

    // ---------------------------------------------------------------------------


    http://lifehacker.ru/2007/02/26/how-to-download-video-from-video-sharing-services/
    http://www.metrsofta.info/browsers/browsers_page33.php
    http://vixy.net/
     
  3. PHPlayer

    PHPlayer Писатель

    Регистр.:
    7 ноя 2008
    Сообщения:
    5
    Симпатии:
    1
    С помощью YouTube API.

    Например:

    Код:
     <?php
    $videoid = "ID видео";
    $url= "http://www.youtube.com/api2_rest?method=youtube.videos.get_video_token&video_id=$videoid";
    $t = trim(strip_tags(@file_get_contents($url)));
    $url = "http://www.youtube.com/get_video.php?video_id=".$videoid."&amp;t=".$t;
    ?> 
     
  4. twist

    twist Создатель

    Регистр.:
    16 мар 2007
    Сообщения:
    39
    Симпатии:
    2
    ну искать файл в кеше не совсем нормальный подход, т.к. сохраняется то разрешение которое в этом браузере было просмотрено, то бишь качество хуже.
    можно воспользоваться http://videosaver.ru
    прогнав ссылку ролика ...w.youtube.com/watch?v=jkbuBB87V6...
    и сохранить тот же ролик в лучшем качестве (если конечно таковое имеется) в flv, и mp4
     
  5. DIAgen

    DIAgen Постоялец

    Регистр.:
    30 окт 2006
    Сообщения:
    134
    Симпатии:
    72
    Вот скрипт на яваскипте для получения полного пути к файлу fla на redtube.com
    PHP:
    function get_url_redredtube (id) {
        var 
    ""id;
        if (
    == "") {
            
    "1";
        } 
        var 
    pathnr "" Math.floor(parseFloat(s) / 1000);
        
        var 
    s.length;
        var 
    1;
        while (
    <= l) {
            
    "0" s;
            ++
    i;
        }
        
    pathnr.length;
        for (
    1<= li++) {
            
    pathnr "0" pathnr;
        }
        var 
    xc = new Array("R""1""5""3""4""2""O""7""K""9""H""B""C""D""X""F""G""A""I""J""8""L""M""Z""6""P""Q""0""S""T""U""V""W""E""Y""N");
        var 
    code "";
        var 
    qsum 0;
        for (
    0<= 6i++) {
            
    qsum qsum parseInt(s.charAt(i)) * (1);
        }
        var 
    s1 "" qsum;
        
    qsum 0;
        for (
    0s1.lengthi++) {
            
    qsum qsum parseInt(s1.charAt(i));
        }
        var 
    qstr;
        if (
    qsum >= 10) {
            
    qstr "" qsum;
        } else {
            
    qstr "0" qsum;
        }
        
    code code xc[s.charCodeAt(3) - 48 qsum 3];
        
    code code qstr.charAt(1);
        
    code code xc[s.charCodeAt(0) - 48 qsum 2];
        
    code code xc[s.charCodeAt(2) - 48 qsum 1];
        
    code code xc[s.charCodeAt(5) - 48 qsum 6];
        
    code code xc[s.charCodeAt(1) - 48 qsum 5];
        
    code code qstr.charAt(0);
        
    code code xc[s.charCodeAt(4) - 48 qsum 7];
        
    code code xc[s.charCodeAt(6) - 48 qsum 4];
        
    content_video 'http://dl.redtube.com/dl.redtube.com/_videos_t4vn23s9jc5498tgj49icfj4678/'+pathnr "/" code ".flv";
        
    alert(content_video);
    }
    get_url_redredtube ('16830');
    Можно без проблема переписать на php и сделать качалку на сервак :)
     
    SPATLET и ivashka нравится это.
  6. 61re

    61re Создатель

    Регистр.:
    4 янв 2009
    Сообщения:
    10
    Симпатии:
    1
    Вот моя функция на php :)
    PHP:
        function video_link($id '')
        {
            if (
    $id == '')
            {
                return 
    FALSE;
            }
            
    $pathnr floor($id 1000);
            
    $l strlen($id);
            
    $i 1;
            while (
    $i <= ($l))
            {
                
    $id '0'.$id;
                
    $i++;
            }
            
    $l strlen($pathnr);
            for (
    $i 1$i <= $l$i++)
            {
                
    $pathnr '0'.$pathnr;
            }
            
    $xc = array(
                
    'R''1''5''3''4''2''O''7''K''9''H''B',
                
    'C''D''X''F''G''A''I''J''8''L''M''Z',
                
    '6''P''Q''0''S''T''U''V''W''E''Y''N'
            
    );
            
    $code '';
            
    $qsum 0;
            for (
    $i 0$i <= 6$i++)
            {
                
    $qsum $qsum substr($id$i1) * ($i 1);
            }
            
    $s1 $qsum;
            
    $qsum 0;
            for (
    $i 0$i strlen($s1); $i++)
            {
                
    $qsum $qsum substr($s1$i,1);
            }
            if (
    $qsum >= 10)
            {
                
    $qstr $qsum;
            }
            else
            {
                
    $qstr '0' $qsum;
            }
            
    $c    ord(substr($id3,1)) - 48 $qsum 3;
            
    $code $code.$xc[$c];
            
    $code $code.substr($qstr1,1);
            
    $c    ord(substr($id01)) - 48 $qsum 2;
            
    $code $code.$xc[$c];
            
    $c    ord(substr($id21)) - 48 $qsum 1;
            
    $code $code.$xc[$c];
            
    $c ord(substr($id51)) - 48 $qsum 6;
            
    $code $code.$xc[$c];
            
    $c    ord(substr($id11)) - 48 $qsum 5;
            
    $code $code.$xc[$c];
            
    $code $code.substr($qstr01);
            
    $c    ord(substr($id41)) - 48 $qsum 7;
            
    $code $code.$xc[$c];
            
    $c    ord(substr($id61)) - 48 $qsum 4;
            
    $code $code.$xc[$c];
            return 
    'http://videos-0'.rand(1040).'.cdn.redtube.com/_videos_t4vn23s9jc5498tgj49icfj4678/'.$pathnr.'/'.$code.'.flv';
        }
     
  7. GOONER

    GOONER Писатель

    Регистр.:
    26 авг 2009
    Сообщения:
    9
    Симпатии:
    0
    Удобнее сохранить в Chrome=>dev tools=>resources
     
  8. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
Статус темы:
Закрыта.