Dla sportu chce sobie uwić ściągarke do YT. Samą metodologię "niby znam". Mój problem polega na tym, że tworząc sobie linkę "z ręki" mogę ściągnąć dowolny klip z youtube. Robiąc jednak to automatem w phapie link staje się błędny. Nie rozumiem dlaczego:(
Sprawa jest prosta. Potrzeba nam tylko video_id (czyli v= w linku) oraz parametr t. Ten drugi o ile nie z linku to bez problemu można wyłowić ze źródła strony (2 wystąpienia &t=, każdy token zakończony %3D włącznie) a następnie skleić z tego linka postaci youtube.com/get_video?video_id=[parametr v]&t=[token wyciągnięty prosto ze źródła strony]&fmt=13 (ostatni parametr odpowiada za format klipu).
Tak jak mówiłem, sklejając taką linke z łapy, wszystko działa, jednak generując link skryptem który zamieszczam poniżej, pod tym linkiem otrzymuje pustą stronę, a w nagłówkach komunikat forbidden.
Dlaczego tak się dzieje ? plz hlp
function wyluskaj($data,$poczatek,$koniec) { if($end==NULL || $start==NULL || $start>$end) { return (NULL); } else return($token); } // ok link <a href="http://www.youtube.com/get_video?video_id=D5BGuOUOHcQ&t=vjVQa1PpcFM3QKkEqQFQsVWXwrPm0MkcpwTaYv5RfdM%3D&fmt=13" target="_blank">http://www.youtube.com/get_video?video_id=...M%3D&fmt=13</a> $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, "http://www.youtube.com/watch?v=D5BGuOUOHcQ"); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_setopt ($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 5); $cache = curl_exec($ch); curl_close($ch); $token=wyluskaj($cache,"&t=","&rv"); $id=wyluskaj($cache,"/watch?v=",'"'); //echo("<br>dlugosc tokena dobrego=".strlen("vjVQa1PpcFOdvP0ljs2Rp1WBUlWYr568iCWw2O2pbSA%3D")); //echo("<br>Dlugosc mojego tokena=".strlen($token));