$100 To Whoever Fixes This Script

Status
Not open for further replies.


I had a quick look, I'm no php expert but for someone else to test it you're going to have to provide more files/info eg:

the script references:
/modules/grabber.inc.php
/modules/grabber/".$service.".php
/crons/download.php

And it writes some stuff to a DB. Where exactly does it fail and with what error?

Not that I think I can fix it anyway, I'm just about to go to bed...

 
its problem is, youtube changed the location to their flv files on the videos recently. So it's grabbing the old path not the new. If anyone needs testing i can sit with them and upload on every edit and help debug. They just need to edit the portion of the code where it grabs the youtube url to the flv file. The rest should still work which should all be in this file:
",$xml_details,2); $end = explode("
and this file is the reference that calls all those functions so it can be used as something to better understand it
http://www.musicvideobum.com/fix/grabber.php.txt
 
I do know there are two seperate URLs that YouTube has now, a new one and an old one, however the one I'm about to post does seem to work with older and newer videos but I think its the old method of downloading them.


It might not be the problem with the actual download location in the script but rather with the scraping its trying to do, it should be using the API to get the video results but if it is scraping then the issue is most likely caused from source code changes on the part of YouTube.

P.S. The fmt= paramater on this URL may appear to be insignificante but its actually quite important and must be included along with the other param's in order to download videos from YouTube, so you might also want to double check if those params are being included in the DL URL of the script.
 
P.S. The fmt= paramater on this URL may appear to be insignificante but its actually quite important and must be included along with the other param's in order to download videos from YouTube, so you might also want to double check if those params are being included in the DL URL of the script.

Looks like it isn't. It only goes as far as the 'video_id' and 't' parameters. g_video_download seems to build the DL URL.
 
Actually if fmt=34 is a constant, you could try changing the last line of g_video_download to:

PHP:
return "http://www.youtube.com/get_video?video_id=".$g_vid_id."&t=".$theT."&el=detailpage&ps=&fmt=34"
 
If everything else goes wrong, try DP. Oh..make that $10. Shit thy'll even make you a brand new one for that much..

You could also PM kblessinggr.
 
Actually if fmt=34 is a constant, you could try changing the last line of g_video_download to:

fmt is not a constant I've seen it change from old versions to new versions and it has something to do with there internal flash player, I'm thinking setting a version or a format setting from the old version to the new version.

Not 100% exactly sure what they use it for but none the less I've seen it used differently depending on which player they are serving.

EDIT: Also the g_video_download your talking about mainly deals with videos served from Google video, you've got to be careful because Google Video download URLs are different from YouTube download URLs.

Especially when your dealing with new videos compared to old videos.
 
Cold? I don't know man I've always considered myself kinda hot.

But since you were talking about this script then yeah your damn rights were way off base, I hope you got it sorted out for him though.

Still waiting to get a hold of him, but I'm pretty confident that I have it solved.
 
Eli if Rage9 didn't get this solved, hit me up on AIM...I've got a lot of experience with youtube. Those guys are bastards.
 
We did figure out that Youtube was throwing him a captcha, that's where I left him, haven't heard anything else since.
 
We did figure out that Youtube was throwing him a captcha, that's where I left him, haven't heard anything else since.

A Captcha,

You should never be presented with a captcha with a direct download link, unless your trying to fetch the videoID through scraping a page, in which case stop scraping and start using the API, but if I remember correctly the URL with video_id is supplied by the user for this.

Which means all you really have to do is use live http headers to fetch the download URL and use that and switch out the video ID.

However I think I remember them putting in a few extra params to prevent this but there was a hidden script and stylesheet you had to scrape through to get the additional params.

I couldn't tell you guys forsure though its been awhile since I did any real work with downloading videos from YouTube and I didn't take any time to sift through the posted code.

But if its not solved then I'll also do a little leg work to help out with the process.
 
Status
Not open for further replies.