• 15-01-2015, 21:53:10
    #1
    merhaba arkadaşlar. youtube den video ve mp3 indirmek için php sınıfı arıyorum fakat sorunsuz çalışana rastlayamadım henüz. elinde ikisi veya sadece bir tanesi olan biri yardımcı olabilir mi ?

    şimdiden teşekkürler
  • 15-01-2015, 22:26:33
    #2
    https://github.com/jeckman/YouTube-Downloader

    Yukaridaki sınıfı kullanabilirsin.
  • 15-01-2015, 22:28:31
    #3
    @Ceu; hocam onu denedim 0kb hatası veriyor
  • 15-01-2015, 23:03:46
    #4
    Birşeyler yaptım senin için, denedim sorunsuz video linklerini çekiyor, kayıt ettirmek için, file_get_contents vb. kullanabilirsiniz. kolay gelsin.
    <?php
    $video_id     = 'n7Qj6ISNi0E';
    $video_adresi = file_get_contents("http://www.youtube.com/get_video_info?video_id=$video_id&el=embedded&ps=default&eurl=&gl=TR&hl=tr");
    $parcala      = explode("&",$video_adresi);
    $t = array(); $g=array(); $h=array();
    echo "<pre>\r\n";
    foreach($parcala as $r){
        $c=explode("=",$r);
        $n=$c[0]; $v=$c[1];
        $y=urldecode($v);
        $t[$n]=$v;
    }
    $streams = explode(',',urldecode($t['url_encoded_fmt_stream_map']));
    foreach($streams as $dt){ 
        $x=explode("&",$dt);
        foreach($x as $r){
            $c=explode("=",$r);
            $n=$c[0]; $v=$c[1];
            $h[$n]=urldecode($v);
        }
        $g[]=$h;
    }
    $mp4_url = $g[2]['url'];
    echo $mp4_url;
    
    
    ?>
  • 15-01-2015, 23:18:01
    #5
    @Ceu; hocam öncelikle ilgin için teşekkürler. ancak birşey farkettim birkaç link denedim bazen çalışmıyor misal bu video id si "sprukwRl9ZQ" sebebi nedir acaba ?
  • 15-01-2015, 23:30:08
    #6
    kaptanasi adlı üyeden alıntı: mesajı görüntüle
    @Ceu; hocam öncelikle ilgin için teşekkürler. ancak birşey farkettim birkaç link denedim bazen çalışmıyor misal bu video id si "sprukwRl9ZQ" sebebi nedir acaba ?
    <?php
    $video_id     = 'sprukwRl9ZQ';
    $video_adresi = file_get_contents("http://www.youtube.com/get_video_info?video_id=$video_id&el=embedded&ps=default&eurl=&gl=TR&hl=tr");
    $parcala      = explode("&",$video_adresi);
    $t = array(); $g=array(); $h=array();
    echo "<pre>\r\n";
    foreach($parcala as $r){
        $c=explode("=",$r);
        $n=$c[0]; $v=$c[1];
        $y=urldecode($v);
        $t[$n]=$v;
    }
    $streams = explode(',',urldecode($t['url_encoded_fmt_stream_map']));
    foreach($streams as $dt){ 
        $x=explode("&",$dt);
        foreach($x as $r){
            $c=explode("=",$r);
            $n=$c[0]; $v=$c[1];
            $h[$n]=urldecode($v);
        }
        $g[]=$h;
    }
    print_r($g);
    
    ?>
    Şu şekilde dener misin birde, ekrana bütün formatları basacaktır. ordan kullanmak istediğini kullanabilirsin.
  • 15-01-2015, 23:38:49
    #7
    @Ceu; hocam format meselesi değil tüm formatları yapıp denedim yine olmadı. verdiğim video id sini denerseniz görürsünüz verdiği link download yapmıyor bazı video id lerinde bunu yapıyor.
    bu sorunu çözebilirseniz çok sevinirim
  • 15-01-2015, 23:40:39
    #8
    Tam emin değilim ama yükleyen kişinin ülke sınırı koyduğundan olduğunu düşündüğümden bazı videolarda video imza (signature) oluşuyor linkte direk signature varsa sıkıntısız açılır ama signature yerine s= varsa şifrelenmiş olarak gelir ve o şifreyi çözüp signature olarak link ekleyip açılabilir sprukwRl9ZQ bu video şifreleme var her videoda şifreleme olmuyor
  • 15-01-2015, 23:43:37
    #9
    ErhanCem adlı üyeden alıntı: mesajı görüntüle
    Tam emin değilim ama yükleyen kişinin ülke sınırı koyduğundan olduğunu düşündüğümden bazı videolarda video imza (signature) oluşuyor linkte direk signature varsa sıkıntısız açılır ama signature yerine s= varsa şifrelenmiş olarak gelir ve o şifreyi çözüp signature olarak link ekleyip açılabilir sprukwRl9ZQ bu video şifreleme var her videoda şifreleme olmuyor
    peki hocam o şifreleme engelini nasıl geçebiliriz ?