Name is required.
Email address is required.
Invalid email address
Answer is required.
Exceeding max length of 5KB

Youtube blocked http://youtube.com/get_video


I get the youtube ...I get the youtube link for hd movies white a php script and gives me this url:
http://youtube.com/get_video?video_id=t7w5Jj4Xmt8&t=vjVQa1PpcFPy4lrvGrDifDcP24sT1vHKZ27RT6ip8Aw=&fmt=22

but i dont works anymore youtube hase blocked the get_video page so you wil now get a 403 page forbidden warn.

68 Community Answers

JW Player

User  
-1 rated :

any ideas on this?

JW Player

User  
1 rated :

I think you will need to update the IP address in the redirect link, but I'm not sure if that will fix it. I'm working on it this weekend.

JW Player

User  
1 rated :

the token its giving you is invalid

dunno what they did, pretty clever , they must be limitng the token to the ip that got the token is my guess

because if you go to a youtube video and view source then find the &t= token and manually make the url as done before it works fine.. because the token was given to that ip , wheras when you use php its your servers ip getting the token and a diff ip trying to get the video

JW Player

User  
2 rated :

so there is no way to make a script that get the token id now

JW Player

User  
-1 rated :

you can get the token just fine, the problem is the token is only valid for the ip that gets the token not for everyone else.

i just tested this theory by saving the movie on the server instead of forwarding the header and it works just fine, so the token is perfecly valid , its just only useable for the ip that grabbed it.

JW Player

User  
0 rated :

I have solved the problem.

by using the get_headers() function,
it gives a arry in the arry is the real linkto the video.

Print that url and you can download it or play it in the jw_player.

You can test this link:
http://funbun.nl/aaa/yt_test.php?id=zpIu27tfjuM

here my php code:
<?php

if(empty($_GET['id']))
{
echo "No id found!";
}
else
{

function url_exists($url)
{
if(file_get_contents($url, FALSE, NULL, 0, 0) === false) return false;
return true;
}

$id = $_GET['id'];
$page = @file_get_contents('http://www.youtube.com/get_video_info?&video_id='.$id);
preg_match('/token=(.*?)&thumbnail_url=/', $page, $token);
$token = urldecode($token[1]);

$get = $title->video_details;
$url_array = array ("http://youtube.com/get_video?video_id=".$id."&t=".$token,
"http://youtube.com/get_video?video_id=".$id."&t=".$token."&fmt=18");

if(url_exists($url_array[1]) === true)
{
$file = get_headers($url_array[1]);
}
elseif(url_exists($url_array[0]) === true)
{
$file = get_headers($url_array[0]);
}

$url = trim($file[19],"Location: ");

echo '<a href="'.$url.'">Download video</a>';
}
?>

JW Player

User  
0 rated :


thank you joey,

is possible to use your code to get flv format instead of mp4? i already tried to change fmt=18 to fmt=6 but without luck, any idea how this can be done.
also how can use mp4 with JW player.

thanks again for your help.

JW Player

User  
0 rated :

Cant Use The Script Following error occurs what's the problem??

Download video Error in my_thread_global_end(): 2 threads didn't exit

and in download video link it shows <a href="Connection: close">

what can i do now??

JW Player

User  
0 rated :

Hi all,

To Asim, same thing happened here, it turns out in the response I'm getting, the url is in position 18 not 19 so

$url = trim($file[19],"Location: ");

should be

$url = trim($file[18],"Location: ");

in my case

anyhow, this url gives you an mp4 which I don't see how to use from flash (what I need is a flv)

also, this solution doesn't seem very secure to me (a slight change in the response and it will fail) for example, http://funbun.nl/aaa/yt_test.php gives the location on position 19, so it could be a server thing.

could it be solved somehow with api & client keys? any ideas?

JW Player

User  
0 rated :

its Working Fine Now Thank You Every One.

JW Player

User  
0 rated :

No &fmt = FLV (verry low)
&fmt=5 = FLV (verry low)
&fmt=6 = FLV (works not always)
&fmt=13 = 3GP (mobile phone)
&fmt=18 = MP4 (normal)
&fmt=22 = MP4 (hd)

This is just a simple script i made so there can be some errors in it.

Because the location position in the array some times change, you can make a function that search in the array and returns the location key from the array.

Till so far it works fine for me ;)

JW Player

User  
0 rated :

Thanks to whoever fixed this

http://corbilla.com/proxyyt2.php?id=B0OGpRq0Lic.flv

Now it is working fine ...

JW Player

User  
0 rated :

Yes, corbilla.com works for me, but only with the 4.3 player version. With 4.4 it does not start playing.

JW Player

User  
0 rated :

@Lucki

I have tried to use the link below with jw player

http://radiolight.6te.net/ytfix.php?v=B0OGpRq0Lic&fmt=5

but it does not work as it is, even though the link itself works fine to get the flv file but because there is no extension of flv, jw does not recognize it.

thank you.

JW Player

User  
0 rated :

Ad the flashvar type=video else te jw player dont know the file type and will not play!

JW Player

User  
0 rated :

hello.i wanted to know how we can do with dailymotion.
thank you for your Results.

JW Player

User  
0 rated :

Here is my dailymotion php script i have made.

You can test this link:
http://funbun.nl/aaa/daily/daily.php?url=http://www.dailymotion.com/related/x8nfem/video/x20o8d_kanelita-wedding_sport

Here my php code:
<?php
if(empty($_GET['url']))
{
echo "No url found!";
}
else
{

function array_ereg_search($val, $array)
{
$i = 0;
$return = array();

foreach($array as $v)
{
if(eregi($val, $v)) $return[] = $i;
$i++;
}

return $return;
}

function get_link($vidlink)
{
$headers = get_headers("http://www.dailymotion.com".$vidlink);
$array_search = array_ereg_search("location: http://", $headers);
$trim_headers = trim($headers[$array_search[0]],"Location: ");
$url = '<a href="'.$trim_headers.'">'.$trim_headers.'</a><br />';
return $url;
}

$get = $_GET['url'];
$get_contents = @file_get_contents($get);
$stripslashes = stripslashes($get_contents);
preg_match('/"video", "(.*?)"/', $stripslashes, $video);
$urldecode = urldecode($video[1]);
$preg_split = preg_split('/@@(.*?)\|\|/', $urldecode);
$preg_replace = preg_replace('/@@(.*?)$/', '', $preg_split);
foreach ($preg_replace as $vidurl)
{
echo get_link($vidurl);
}
}
?>

JW Player

User  
0 rated :

good work joey.
It works to me

JW Player

User  
0 rated :

Hi:

I think folowing will help. its grabbing the flv

if(empty($_GET['id']))
{
echo "No id found!";
}
else
{

function url_exists($url)
{
if(file_get_contents($url, FALSE, NULL, 0, 0) === false) return false;
return true;
}

$id = $_GET['id'];
$page = @file_get_contents('http://www.youtube.com/get_video_info?&video_id='.$id);
preg_match('/token=(.*?)&thumbnail_url=/', $page, $token);
$token = urldecode($token[1]);

$get = $title->video_details;
$url_array = array ("http://youtube.com/get_video?video_id=".$id."&t=".$token,
"http://youtube.com/get_video?video_id=".$id."&t=".$token."&fmt=5");

if(url_exists($url_array[1]) === true)
{
$file = get_headers($url_array[1]);
}
elseif(url_exists($url_array[0]) === true)
{
$file = get_headers($url_array[0]);
}


$arr=implode('',$file);


$arr2=preg_match_all('/Location: .{2,600}/',$arr,$match);

$arr3=preg_match_all('/Location: .{2,600}Transfer-Encoding:/',$match[0][1],$m2);



$url = trim($m2[0][0],"Transfer-Encoding:");
$url = trim($url,"Location: ");
//$url = trim($file[19],"Location: ");

echo '<a href="'.$url.'">Download video</a>';
}

JW Player

User  
0 rated :

To get only flv with my script set fmt=18 to fmt=34,
because fmt 34 is the same as fmt 18 only then in flv
thats all ;)

I have a array with tow links one widout a fmt, because
the link widout fmt is in flv and is always available.

P.S. fmt=5 and 6 works not always

<?php

if(empty($_GET['id']))
{
echo "No id found!";
}
else
{

function url_exists($url)
{
if(file_get_contents($url, FALSE, NULL, 0, 0) === false) return false;
return true;
}

$id = $_GET['id'];
$page = @file_get_contents('http://www.youtube.com/get_video_info?&video_id='.$id);
preg_match('/token=(.*?)&thumbnail_url=/', $page, $token);
$token = urldecode($token[1]);

$get = $title->video_details;
$url_array = array ("http://youtube.com/get_video?video_id=".$id."&t=".$token,
"http://youtube.com/get_video?video_id=".$id."&t=".$token."&fmt=34");

if(url_exists($url_array[1]) === true)
{
$file = get_headers($url_array[1]);
}
elseif(url_exists($url_array[0]) === true)
{
$file = get_headers($url_array[0]);
}

$url = trim($file[19],"Location: ");

echo '<a href="'.$url.'">Download video</a>';
}
?>

JW Player

User  
0 rated :

hi joey

i am not able to get the video as it only returns me 14 array elements. kindly can you check it at <a href="http://www.paktubevideos.com/download-youtube-videos.html">Download Youtube Videos</a>. it simply gives me the url of my page no youtube get video url :( please help

JW Player

User  
0 rated :

oh joey

You are great developer :) :) :) ........... in my case URL was on array element 16....

What will happen if youtube blocked fsockopen for curl functions???

JW Player

User  
0 rated :

@joey

Your script from dailymotion play hd videos too??

JW Player

User  
0 rated :

Hi@all
is somebody able to download this video?

http://www.youtube.com/watch?v=2yuMJ3v-h4E


I got only a 403 forbidden

JW Player

User  
0 rated :

@jim

Youtube suports now long videos unfortunately this videos can not be downloaded.

Youtube streams the long video to the player whit rtmp.

@all

The array element id is not always the same, so you can better use my array search.

function array_ereg_search($val, $array)
{
$i = 0;
$return = array();

foreach($array as $v)
{
if(eregi($val, $v)) $return[] = $i;
$i++;
}


$headers = get_headers("http://youtube.com/get_video?video_id=".$id."&t=".$token);
$array_search = array_ereg_search("location: http://v", $headers);
$array_search[0] this gives the array element id.

JW Player

User  
0 rated :

Hi, Visit http://cclworld.co.cc to download videos in MP4, FLV, 3GP and High Quality 3GP format. This site is using YouTube API 2.0 and download service is still working

JW Player

User  
0 rated :

Anyone knows how to do the same in java?? I can't find anything like the get_headers in java. I can get the header using an URLConnection but there is not field Location... so I can't find the real URL..

JW Player

User  
0 rated :

@ Visitor,

Works not for me.

@ Eniraka,

Is this maybe what you need?
http://www.exampledepot.com/egs/java.net/GetHeaders.html

JW Player

User  
0 rated :

how to change video name after download ?

i want video.flv to mymane.flv this is posible ?

JW Player

User  
0 rated :

How can i edit this line so it would be mp4 instaed of .flv download?

echo '<div align="center"><a href="http://www.youtube.com/get_video?video_id='.$var_id.'&l='.$matches[4].'&t='.$var_t.'">Download Here</a></div>';

JW Player

User  
0 rated :

I got this line in youtube.php file can i edit to get other format then .flv ?

$url = "http://www.youtube.com/get_video?video_id=".$var_id."&t=".$var_t;

Thank's for your help

JW Player

User  
0 rated :

To get an other format then flv edit the fmt

No &fmt = FLV (verry low)
&fmt=5 = FLV (verry low)
&fmt=6 = FLV (works not always)
&fmt=13 = 3GP (mobile phone)
&fmt=18 = MP4 (normal)
&fmt=22 = MP4 (hd)

JW Player

User  
0 rated :

I add this where in the line of code?

&fmt=18

Thank's

JW Player

User  
0 rated :

Replace the $url_array for the whan below to get *&fmt=18* if you use my code

$url_array = array ("http://youtube.com/get_video?video_id=".$id."&t=".$token,
"http://youtube.com/get_video?video_id=".$id."&t=".$token."*&fmt=18*");

JW Player

User  
0 rated :

I am using JW 4.4 and SWFobject 1.6

I would like to try using the proxy thru php page calls to be able to retrieve fmt=18 and fmt=22 versions of the YouTube videos.

I guess I need the latest version of your php file, and i am trying to figure out how to use that in conjunction with the player. I have been previously just handing the player the URIs from the Youtube EMBED maker bit on their site.

This is my current code for the object/embed on the page (with lots of extra flashvars removed for clarity):

<div name="mediaspace" id="mediaspace"></div>
<script type="text/javascript">
var so = new SWFObject('/jw/player.swf','mpl','640','385','9');
so.addParam('allowscriptaccess','always');
so.addParam("wmode","transparent");
so.addParam('allowfullscreen','true');
so.addParam('flashvars','&ltas.mediaid=1234&title=somename&description=somedesc&plugins=ltas&channel=11886&type=youtube&file=<WHATGOESHERE?>');
so.write('mediaspace');
</script>

So, do I put a reference to the php page in the <WHATGOESHERE?> and pass the reference to it?

Like:
&file=/joeypage.php?url=http://www.youtube.com/watch?v=LPmbGzQaOCs

OR do i need to just manually go to the php page with a browser and pass it the Youtube URL and then do a View Source on the <a href=""> tag on the php page, and then load THAT url into my <WHATGOESHERE?> location?


JW Player

User  
0 rated :

@joey:

I get now this error: "x-content-type-options: nosniff" as downloadlink...

Any idea?

Is it's also possible for include the normal link in a flashplayer?

thanks

JW Player

User  
0 rated :

hello joey

Again your this script also blocked by youtube. Check my website for downloading URL above posted`

JW Player

User  
0 rated :

Hi there,

Any updated working code ?

I think we have to think in legal way , because what every solution we found today, tomorrow will be useless.


Regards,
AlNadabi

JW Player

User  
0 rated :

Ainadabi, the above works fine for us.

Last fix went about 8 months. I wonder how long this one will last.

Thanks everybody for the help.

JW Player

User  
0 rated :

Joey!!!!
you are the man!

JW Player

User  
0 rated :

I just noticed my video gallery quit working. Youtube must have made the changes in the past couple of months. Here's my php "get video" code, can anyone tell me what needs changed?

<?php

include('HTTPRequest.php');


$videoID = $_GET['videoID'];
$videoType = $_GET['videoType'];


function getYouTubeFLVPath($videoID){

//$url= 'http://www.youtube.com/watch?v='.$videoID;
//$data = implode("", file($url));
$url = 'http://www.youtube.com/watch?v='.$videoID;
$r = new HTTPRequest($url);
$data = $r->DownloadToString();


if ( preg_match_all("/&t=[^&]*/", $data, $matches) ){
$t = $matches[0][0];
$t = preg_split("/=/", $t);
$t = $t[1];


//$v = $url;
$parts = preg_split ("/\?v=/", $url);

$v = $parts[1];

//$v = $videoID; // $v[1];

return "http://www.youtube.com/get_video.php?video_id={$v}&t={$t}&.flv";
}


}


function getGoogleVideoFLVPath($videoID){

/**
normally, you would view the video in a browser at a url like : http://video.google.com/videohosted?docid=XXXXXXXX,
but that is actually a frameset, and you need to grab the source of the 'videohosted' frame and parse that.
*/

$r = new HTTPRequest('http://video.google.com/videohosted?docid='.$videoID);
$source = $r->DownloadToString();
$startPos = strpos($source, 'videoUrl\u003d');
//echo "start = $startPos <br> \n";

$nextAmpersand = strpos($source, '&', $startPos);
//echo "nextAmpersand = $nextAmpersand<br> \n";

$length = $nextAmpersand - $startPos;

$encodedURL = substr($source, $startPos+ 14, $length-14); //add 14 to account for 'videoUrl\u003d'

//echo "encodedURL = $encodedURL<br> \n";

$decodedURL = urldecode($encodedURL);
//echo "decodedURL = $decodedURL<br> \n";
return $decodedURL.'&.flv';
}





switch ($videoType){

case 'google':
echo '&path='.urlencode ( getGoogleVideoFLVPath($videoID) );
break;

case 'youtube':
echo '&path='. urlencode ( getYouTubeFLVPath($videoID) );
break;



}


?>

JW Player

User  
0 rated :

CCL World has finally been moved to to http://cclworld.uni.cc

JW Player

User  
0 rated :

try this one to download youtube video.
http://getvideo.comxa.com

JW Player

User  
0 rated :

Looks like it went about a month as it;s already not working. :(

JW Player

User  
0 rated :

Got it to work again. Per the example above by Joey, the preg_match line, the /token needs to be changed to a /&token. There's now a ftoken in there and the script is picking up on that.

Still can't get the hd to work but at least the rest is working fine.

Thanks.

JW Player

User  
0 rated :

Hi!. Every one.I need a help from.I am not Best php coder.
I need to attached you tube videos without logo.
here's the code I have use for build the player

Player.html
<div id="container"><a href="http://www.macromedia.com/go/getflashplayer">Get the Flash Player</a> to see this player.</div>

<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
var so = new SWFObject('player.swf','single','420','265','0');
so.addVariable('fullscreen','true');
so.addParam("allowfullscreen","true");
so.addParam("wmode","opaque");
so.addVariable('width','420');
so.addVariable('height','265');
so.addVariable('displayclick','play');
so.addVariable('plugins', 'd-sharing');

so.addVariable('dsharing.sharetoolbar', false);
so.addVariable('dsharing.thumb', 'thumbs/video1.jpg');
so.addVariable('dsharing.dskin', 'DSharingSample.swf'); //link to the XML containing related clips
so.addVariable('dsharing.mailaction', 'http://www.delfi.ee'); // Address to submit the ShareForm data (eg. http://www.yoursite.com/sendmail.php). Variables posted are: email, name, friend
so.addVariable('dsharing.embedvalue','Test');

so.addVariable('dsharing.label_link','Add to homepage');
so.addVariable('dsharing.label_name','Your name');
so.addVariable('dsharing.label_email',"Your e-mail");
so.addVariable('dsharing.label_friend',"Friend's e-mail");
so.addVariable('dsharing.label_replay','Replay video');
so.addVariable('dsharing.label_send','Send');
so.addVariable('dsharing.label_delete','Delete');

so.addVariable("file", "mrss.xml&backcolor=003300&frontcolor=FFFFFF&screencolor=000000&skin=snel.swf");

so.addVariable("controlbar","bottom");
so.addVariable('image','preview.jpg')
so.write('container');
</script>
<!--<script type="text/javascript">

</script>
-->



This is the mrss.xml

<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<trackList>
<track>
<location>rl.php?v=KruCukcswFw</location>
<title>alien test</title>
</track>
</trackList>
</playlist>

JW Player

User  
0 rated :

@ joy or any one view the code?

JW Player

User  
0 rated :

Can any one view the Php & xml codes for Playing videos Display without logo.
Please! give some examples...
@joy can your code use for make play list(I mean you tube Play list using .xml file)

Can you view the code here....

Thanks! in Advance

JW Player

User  
0 rated :

This unique script [CCL World YouTube] is not for sale. You can get YouTube search and download for free from here : http://m1net.online.fr/ . Check out CCL World YouTube : http://cclworld.uni.cc for new Embed system. Now it has guaranteed uptime of 99.9%.

JW Player

User  
0 rated :

Hi Lex,

You can do it. But for it you have to grab video directly from YouTube server and have to pass that in your personal flash player. You can view the example of it from CCL World YouTube : http://cclworld.uni.cc . They are showing videos without any YouTube Logo. They can place a watermark of them like YouTube but they do not like interruption when running a video.

Please don't ask for the script.

Thanks!

JW Player

User  
0 rated :

Can anyone plz tell where to put this php code as a file in our website's control panel. I m totally new to php scripting. plz mail me at suhail141@ymail.com i really need this script.

JW Player

User  
0 rated :

Anyone needing a highly customized HD playlist solution, i can make one to suit your needs for $20.

Here is some code for those who know php
It will simply check the fmt 22 , then check the headers to see if it gets a ok 200 responce so it knows its a valid video, else it will use the normal fmt 18 video.

Very simple and suprisingly faster that i thought it was going to be,

CODE
bc.. <?php

/*|=================================================
|*| YOUTUBE GRABBER UTIL by Centreonet Solutions
|*| Support :: greenscripts@gmail.com
|*| Donate from paypal to same address.
|*|=================================================
|*/


function googleCache($key,$token,$fmt){
$ytURL = "http://www.youtube.com/get_video.php?video_id=" . $key . "&t=" . $token. "&fmt=" . $fmt;
$headers = get_headers($ytURL,1);
$status = explode(" ",$headers['1']);
if($status[1] == "200"){
if(!is_array($headers['Location'])) {
$videoURL = $headers['Location'];
}else{
foreach($headers['Location'] as $header){
if(strpos($header,"googlevideo.com") != false){
$videoURL = $header;
break;
}
}
}
return $videoURL;
}else{
return "";
}
}

function youtubeData($url){
$key = explode("v=",$url);
$key = $key[1];
$content = file_get_contents("http://youtube.com/get_video_info?video_id=".$key);
parse_str($content);
if($token != ""){
$videoHD = googleCache($key,$token,22);
if($videoHD != ""){
$videoFile = $videoHD;
}else{
$videoFile = googleCache($key,$token,18);
}
}
return $videoFile;
}


$par = parse_url($_GET['url']);
$var = explode(".",$par['host']);
$domain = $var[1];

if($domain == 'youtube'){
$hotlink = youtubeData($_GET['url']);
echo $hotlink;
}
exit();
?>




Simple to use, take the full youtube url , ex. http://www.youtube.com/watch?v=9W1dhqc-JBs

And it will check for hd first, if found, that is what it will use.

I have tons of good youtube tools for those who need my service, i work real cheap, contact me at dacookiemonn2be@yahoo.com

Here is an example of a normal link generating a hd video for my custom player.

http://cs410.opticblur.net/player.php?id=&w=&url=http://www.youtube.com/watch?v=9W1dhqc-JBs

Not sure if this helps you in jw player, i dont know how they take the yt stuff and pass to api, but if it dont mind the google url it might nypass the api and hotlink for you


Oh ya, this will generate a fresh token each time page is loaded, so those with problem with token should not have with this,

JW Player

User  
0 rated :

hulax q tal tengo 15 aos de edad y bueno m encanta la seccion de alex xq habla mucho de chicos y quisiera que m ayudaras xq la ex d mi novio anda tras de el y nc q hacer AYUDENME PLEASE

JW Player

User  
0 rated :

anyone knows how to download yahoo video and i film. i has tried many time to get video from yahoo and ifilm .

JW Player

User  
0 rated :

who's knows how to make downloads from ku6 and 56.

JW Player

User  
0 rated :

Hi, Joey please help me. Your script for download daily motion video doesn't work, can you help me? thank's

JW Player

User  
0 rated :

HELLO ALL! NOTICE


bc.. *FOR EVERYONE THAT POST SCRIPT : THINK TO POST A CLEAN SCRIPT AT THE END SO MEMBER COULD USE IT DIRECTLY WITHOUT TESTING EACH OVER.*


CHEERS!

JW Player

User  
0 rated :


compas de gato nada hade ras quento voiu pras eu voiu eu cmoo pras de foiou umas de foiu name.

oie badia umas de foiu casa 91744803

JW Player

User  
0 rated :

i need help.
Youtube blocked my video grabber on my clipshare site.
i will pay 30$ to fix this problem.
chrizstylezz@gmail.com

JW Player

User  
0 rated :

OK I note that when you click HD on a video-the address stays the same;

as for .flv>.mpg4

what a waste its like-going back to 56k dialup

I dunno-maybe there are players that can only play .flv

but i am having problems
http://www.youtube.com/watch?v=om-QPaETiic
as example
if I go to view and click viewsource, I get the html page
but theyve gone to great lengths to disguise the <img src url..........> that really works; so now what?

JW Player

User  
0 rated :

praveen

Hi i am not able to get and see the you tube videos
it saying upgreade the Flash player but doing so it not working what to do for this

JW Player

User  
0 rated :

Same here.

All of a sudden Youtube in FLV Player just stopped working.

JW Player

User  
0 rated :

Hi,

Why dont try using firebug for firefox. There you can see all get calls. Then just open the one with higher weight in another tab . finally firefox will ask you whether to save the flv, mp4 file or not.

JW Player

User  
0 rated :

This is all very interesting... Has anyone found a workaround for PRIVATE videos yet?

JW Player

User  
0 rated :

goto http://topcyoutube.com/index.php?l=es
it's work!

JW Player

User  
0 rated :

Hi,

Im trying to create a php downloader file that download the video in fmt=22 if available and if fmt=18 in case the first one it's not available.
I have the following script, but I dont have a clue about how to call it.
<>
<?php

/*|=================================================
|*| YOUTUBE GRABBER UTIL by Centreonet Solutions
|*| Support :: greenscripts@gmail.com
|*| Donate from paypal to same address.
|*|=================================================
|*/


function googleCache($key,$token,$fmt){
$ytURL = "http://www.youtube.com/get_video.php?video_id=" . $key . "&t=" . $token. "&fmt=" . $fmt;
$headers = get_headers($ytURL,1);
$status = explode(" ",$headers['1']);
if($status[1] == "200"){
if(!is_array($headers['Location'])) {
$videoURL = $headers['Location'];
}else{
foreach($headers['Location'] as $header){
if(strpos($header,"googlevideo.com") != false){
$videoURL = $header;
break;
}
}
}
return $videoURL;
}else{
return "";
}
}

function youtubeData($url){
$key = explode("v=",$url);
$key = $key[1];
$content = file_get_contents("http://youtube.com/get_video_info?video_id=".$key);
parse_str($content);
if($token != ""){
$videoHD = googleCache($key,$token,22);
if($videoHD != ""){
$videoFile = $videoHD;
}else{
$videoFile = googleCache($key,$token,18);
}
}
return $videoFile;
}


$par = parse_url($_GET['url']);
$var = explode(".",$par['host']);
$domain = $var[1];

if($domain == 'youtube'){
$hotlink = youtubeData($_GET['url']);
echo $hotlink;
}
exit();
?>
</>
Im trying with the following but it doesnt work so I guess Im doing something wrong:
mywebsite.com/nameofphpfile.php?v=NG2zyeVRcbs


Any help?

thanks

JW Player

User  
0 rated :

anyone know how to make an app that would run on google app engine that would run a youtube downloader?

JW Player

User  
0 rated :

http://www.youtube.com/watch?v=zvWEByGp3DQ&feature=PlayList&p=DC4B3C25C0793D42&playnext_from=PL&index=4

This question has received the maximum number of answers.