从http://www.youtube-mp3.org/ YouTube的下载链接 [英] Youtube download link from http://www.youtube-mp3.org/

查看:261
本文介绍了从http://www.youtube-mp3.org/ YouTube的下载链接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在使用 http://www.youtube-mp3.org/ 以获得mp3歌曲的网络收音机项目的下载链接(下载文件流和输出它)。最近似乎在 http://www.youtube-mp3.org/改变了它的工作流程。直到现在我能够获得的URL的正确格式:

<一个href=\"http://www.youtube-mp3.org/get?ab=128&video_id=KMU0tzLwhbE&h=5671e7d33d4eccb5b89ea8f54d9911d4&r=1387110278658.1527580295\" rel=\"nofollow\">http://www.youtube-mp3.org/get?ab=128&video_id=KMU0tzLwhbE&h=5671e7d33d4eccb5b89ea8f54d9911d4&r=1387110278658.1527580295

而R =时间戳
我所做的时间戳自己作为时代。这种运作良好,而不0.1527580295后缀。
偏偏这似乎有需要为不带后缀的链接重定向回转换的网站。

到现在为止的algorithim是提到:

的Youtube MP3组织LINQ获得解释​​

<$c$c>http://www.youtube-mp3.org/api/itemInfo/?video_id=#{video_id}&ac=www&r=#{Time.now.to_i}

任何一个是否知道如何获得后缀部分?

//嘿,
我没有多大的Web编程的家伙......但是这个事情我实在忽略了。谢谢!

添加到了我的小C#API。

 &LT;  - 语言:C# - &GT;
    const int的AM = 65521;
    INT GetCCSufix(字符串)
    {
        INT C = 1,B = 0,D,E;
        VAR字符= a.ToCharArray();
        对于(E = 0; e控制chars.Length,E ++)
        {
            D =字符[E]
            C =(C + D)%AM;
            B =(B + C)%AM;
        }
        回到B&LT;&LT; 16 | C;
    }

伟大工程;)


解决方案

我不知道这是什么后缀手段,而是从阅读的JavaScript youtube-mp3.org文件你可以学习如何产生的客户端。

  VAR __AM = 65521; //最大的素数2 ^ 16少... ...
功能毫升(一){
    变种C = 1,B = 0,D,E;
    对于(E = 0; e控制则为a.length,E ++){
        D = a.char $ C $猫(E);
        C =(C + D)__%AM;
        B =(B + C)%__ AM;
    }
    回到B&LT;&LT; 16 | C;
}

生成的媒体网址是:

<$p$p><$c$c>\"http://www.youtube-mp3.org/get?ab=128&video_id=\"+video_id+\"&h=\"+info.h+\"&r=\"+timeNow+\".\"+cc(video_id+timeNow)


  VAR timeNow = Date.now()的toString();

I've been using the http://www.youtube-mp3.org/ to obtain download links for mp3 songs for a "internet radio" project (download file stream and output it). Lately the http://www.youtube-mp3.org/ seemed to changed it's workflow. Till now I was able to obtain the proper format of the url:

http://www.youtube-mp3.org/get?ab=128&video_id=KMU0tzLwhbE&h=5671e7d33d4eccb5b89ea8f54d9911d4&r=1387110278658.1527580295

Whereas r=timestamp I did the timestamp myself as epoch. This worked well without the .1527580295 suffix. Unfortunetly this seems to be needed as the link without the suffix redirects back to the conversion site.

Up till now the algorithim was as mentioned:

Youtube mp3 org linq acquiring explained

http://www.youtube-mp3.org/api/itemInfo/?video_id=#{video_id}&ac=www&r=#{Time.now.to_i}

Does any one know how to obtain the suffix part?

//Hey, I'm not much of an web programming guy ... but this is something I have surely overlooked. Thanks!

Added this to my small C# API.

  <!-- language: c# -->
    const int AM = 65521;
    int GetCCSufix(string a)
    {            
        int c = 1, b = 0, d, e;
        var chars = a.ToCharArray();
        for(e =0; e< chars.Length; e ++)
        {
            d = chars[e];
            c = (c + d) % AM;
            b = (b + c) % AM;
        }
        return b << 16 | c;
    }

Works great ;)

解决方案

I don't know what this suffix means but reading the client javascript file from youtube-mp3.org you can learn how to generate it.

var __AM=65521; // the largest prime less than 2^16...
function cc(a){
    var c = 1, b = 0, d, e;
    for(e = 0; e < a.length; e++){
        d = a.charCodeAt(e);
        c = (c+d)%__AM;
        b = (b+c)%__AM;
    }
    return b<<16|c;
}

The generated media URL is :

"http://www.youtube-mp3.org/get?ab=128&video_id="+video_id+"&h="+info.h+"&r="+timeNow+"."+cc(video_id+timeNow)

with

var timeNow = Date.now().toString();

这篇关于从http://www.youtube-mp3.org/ YouTube的下载链接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆