获取真实地址解析方法youku

地址解析  时间:2021-03-03  阅读:()

优酷视频真实地址解析方法

1. 先来看一下解析后的视频地址http://f.youku.c om/player/getF lvP ath/s id/13726418137931150_00/s t/flv/file id/0300021400518D5C5F52F8055EEB3EDF07F978-82F2-09F2-FC7D-87DFFCAC19CA?K=fcb6411a98ffbacc2411743b&hd=0http://f.youku.c om/player/getF lvP ath/s id/13726418137931150_01/s t/flv/file id/0300021401518D5C5F52F8055EEB3EDF07F978-82F2-09F2-FC7D-87DFFCAC19CA?K=b7ab4f7664a9e35c2828b9e1&hd=0http://f.youku.c om/player/getF lvP ath/s id/13726419939844902_00/s t/mp4/fileid/0300081300518D7ABE52F8055EEB3 EDF07F978-82F2-09F2-FC7D-87DFFCAC19CA?K=d12ee0b71ab69d13261d170d&hd=1

以上三段红色部分分别代表sid、 fileid和key。

我们来分析一下这个地址除了固定的部分以外整个地址由sid、 fileid和key三部分组成下面我们逐一来分析如何解析这三个值。

而蓝色的部分表示视频文件的序号16进制如果一个视频文件被分为11部分那只要把蓝色部分改为从00到0A就可以了。hd=0:标清 hd=1:高清 hd=2:超清

2. 普通的youku地址 http://v.youku.com/v_show/id_XNTc2MDc3OTE2.html

3. 把其中的红色部分复制出来拼在http://v.youku.c om/player/getPlayList/Vid eoID S/

如下http://v.youku.c om/player/getPlayList/VideoIDS/XNTc2 M D c3OTE 2

获取到jason数据如下

{

"data": [

"http://g2.ykimg.com/1100401F4651CC00254D140817BFFF0F6FF277-D229-9A0A-A8BD-6B73BE3BECDB",

"seed":7338,

"tags": [

"\u5965\u5229\u5965",

"\u4eb2\u5b50\u4e00\u523b"

],

"categories": "92",

"videoid": "144019479",

"vidEncoded": "XNTc2MDc3OTE2",

"l i st": [

"vid": "144019479",

"vidEncoded": "XNTc2MDc3OTE2",

"title":

"\u5965\u5229\u5965\u4eb2\u5b503\u53f7\u4f5c\u54c1-\u4e00\u8d77\u770b\u4e16\u754c",

"vv": "8784960"

},

"vid": "142862435",

"vidEncoded": "XNTcxNDQ5NzQw",

"title":

"\u5965\u5229\u5965\u4eb2\u5b502\u53f7\u4f5c\u54c1-\u7238\u7238\u7684\u5305\u5b50\u94fa",

"vv": "330270"

},

"vid": "140904104",

"vidEncoded": "XNTYzNjE2NDE2",

"title":

"\u5965\u5229\u5965\u4eb2\u5b501\u53f7\u4f5c\u54c1-\u6447\u6eda\u7ae5\u5e74",

"vv": "15326162"

},

"vid": "135072168",

"vidEncoded": "XNTQwMjg4Njcy",

"title":

"\u51af\u5c0f\u521a\u4eb2\u5b50\u5927\u4f5c-\u7236\u4eb2\u7bc7",

"vv": "1343811"

},

"vid": "138357528",

"vidEncoded": "XNTUzNDMwMTEy",

"title":

"\u51af\u5c0f\u521a\u4eb2\u5b50\u5927\u4f5c-\u6bcd\u4eb2\u7bc7",

"vv": "86241"

}

],

"l ist_pre": {},

"vid": "142862435",

"vidEncoded": "XNTcxNDQ5NzQw",

"title":

"\u5965\u5229\u5965\u4eb2\u5b502\u53f7\u4f5c\u54c1-\u7238\u7238\u7684\u5305\u5b50\u94fa",

"vv": "330270"

},

"username": "\u5965\u5229\u5965\u7ae5\u771f\u7a7a\u95f4",

"userid": "135774207",

"title":

"\u5965\u5229\u5965\u4eb2\u5b503\u53f7\u4f5c\u54c1-\u4e00\u8d77\u770b\u4e16\u754c",

"ts": "vszuWTDrH Mg5-yjSAWna*I8",

"tsup": "vszqYTPrHMg5-yjSAlHe*I8",

"key1": "b14bd126",

"key2": "81491ad0441781ce",

"showid": "278338",

"showid_encode": "e852b1b8c35811e296ac",

"paid":0,

"paid_type": "",

"show_videotype": 1,

},

"dvd": {

"notsharing": "0"

},

"seconds": "165.73",

"streamfi leids": {

"hd2":

"23*27*23*23*23*50*23*50*23*23*6*50*5*5*23*23*43*49*20*23*44*44*23*47*50*43

*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*",

"mp4":

"23*27*23*23*23*47*23*50*23*23*6*50*5*49*44*44*50*50*20*23*44*44*23*47*50*43*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*",

"flv":

"23*27*23*23*23*20*23*50*23*23*6*50*5*49*44*25*42*49*20*23*44*44*23*47*50*43*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*"

},

"segs": {

"hd2": [

{

"size": "25126208",

"seconds": "166",

"k": "f8c709b809a88c3b261d1786",

"k2": "1df409038016e8e45"

}

],

"mp4": [

{

"size": "11458293",

"seconds": "166",

"k": "6fcdf09b5aa57d1324117483",

"k2": "18778cb38988dc4e9"

}

],

"flv": [

{

",

"seconds": "166",

"k": "5a6d3f1f3a7ea4a124117483",

"k2": "1fd314c80a6f35b58"

}

]

},

"streamsizes": {

"hd2": "25126208","mp4": "11458293","flv": "5965281"},

"stream_ids": {

"hd2": "143315903","mp4": "143314458","flv": "143310233"},

"strea mlogos": {

"hd2":0,

"mp4":0,

"flv":0

},

"streamtypes": [

],

"streamtypes_o": [

"hd2",

"flvhd",

"mp4"

]

}

],

"user": {

"id":0

},

"control ler": {

"search_count": true,

"mp4_restrict": 1,

"stream_mode":2,

"video_capture": true,

"hd3_enabled": false,

"area_code":440400,

"dma_code":4134,

"continuous": 1,

"playmode": "show",

"circle": fa lse,

"tsflag": fa lse,

"other_disa ble": fa lse,

"share_disabled": false,

"download_disabled": false,

"pc_disabled": false,

"pad_disabled": false,

"mobi le_disabled": false,

"tv_disabled": false

}

}

4. 解析jason数据

通过jason数据获取sid、 fileid和key值方法如下

获取sid

/*

获取sid根据当前时间自动计算

*/private static String getSid( ) {

String sid = new Date( ) .getTime( ) + ""

+ (1000 + new Random( ) .nextInt(999) ) + "" ;

// + (new Random( ) .nextInt(9000) + 1000) ;return sid;

}

获取fileid

/*

获取fileid

参数fileid seed为上面提到的json对象中提供。

例子中的seed 7338fileId有3个值分别是flv标清在链接中的参数为hd=0

23*27*23*23*23*20*23*50*23*23*6*50*5*49*44*25*42*49*20*23*44*44*23*47

*50*43*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*mp 4高清在链接中的参数为hd=1

23*27*23*23*23*47*23*50*23*23*6*50*5*49*44*44*50*50*20*23*44*44*23*47

*50*43*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*hd2超清在链接中的参数为hd=2

23*27*23*23*23*50*23*50*23*23*6*50*5*5*23*23*43*49*20*23*44*44*23

*47*50*43*49*44*44*44*23*25*61*49*53*9*44*44*14*20*27*25*23*14*5*61*53*23*14*43*25*27*44*14*25*6*34*25*53*44*34*42*47*9*25*50*

*/private static String getFileId(String fileId, int seed) {

String mixed = getMixString(seed) ;

String[ ] ids = fileId.split("\\*") ;

String realId = "";for (int i = 0; i < ids.length; ++i) {int idx = Integer.parseInt(ids [i] ) ;realId += mixed.charAt(idx) ;

}return realId;

}private static String getMixString(int seed) {

String mixed = "";

String source =

"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/\\: ._-1234567890";int len = source.length( ) ;for (int i = 0; i < len; ++i) {seed = (seed * 211 + 30031) % 65536;int index = (int) (seed / 65536d * source.length( ) ) ;char c = source.charAt(index) ;mixed = mixed + c;source = source.replace(c + "", "") ;

}return mixed;

}

获取key值

直接从jason数据中获取到

标清key "5a6d3f1f3a7ea4a124117483"

高清key "6fcdf09b5aa57d1324117483"

超清key "f8c709b809a88c3b261d1786"

执行上面的程序获取到的数据如下sid 13727290697801316fileid(hd0) 

030002010051CBF9AB20FF0817BFFF09DB46FF-2390-CD40-793F-95E94FEA8691fileid(hd1) 

030008010051CBFF1120FF0817BFFF09DB46FF-2390-CD40-793F-95E94FEA8691fileid(hd2) 

VinaHost,越南vps,国内延时100MS;不限流量100Mbps

vinahost怎么样?vinahost是一家越南的主机商家,至今已经成13年了,企业运营,老牌商家,销售VPS、虚拟主机、域名、邮箱、独立服务器等,机房全部在越南,有Viettle和VNPT两个机房,其中VNPT机房中三网直连国内的机房,他家的产品优势就是100Mbps不限流量。目前,VinaHost商家发布了新的优惠,购买虚拟主机、邮箱、云服务器、VPS超过三个月都有赠送相应的时长,最高送半年...

RAKsmartCloud服务器,可自定义配置月$7.59

RAKsmart商家一直以来在独立服务器、站群服务器和G口和10G口大端口流量服务器上下功夫比较大,但是在VPS主机业务上仅仅是顺带,尤其是我们看到大部分主流商家都做云服务器,而RAKsmart商家终于开始做云服务器,这次试探性的新增美国硅谷机房一个方案。月付7.59美元起,支持自定义配置,KVM虚拟化,美国硅谷机房,VPC网络/经典网络,大陆优化/精品网线路,支持Linux或者Windows操作...

hostkey俄罗斯、荷兰GPU显卡服务器/免费Windows Server

Hostkey.com成立于2007年的荷兰公司,主要运营服务器出租与托管,其次是VPS、域名、域名证书,各种软件授权等。hostkey当前运作荷兰阿姆斯特丹、俄罗斯莫斯科、美国纽约等数据中心。支持Paypal,信用卡,Webmoney,以及支付宝等付款方式。禁止VPN,代理,Tor,网络诈骗,儿童色情,Spam,网络扫描,俄罗斯色情,俄罗斯电影,俄罗斯MP3,俄罗斯Trackers,以及俄罗斯法...

地址解析为你推荐
缓冲区溢出教程适合黑客初级学者使用的黑客工具有那些 、怎么在qq空间里添加背景音乐怎么在QQ空间里插入背景音乐??自助建站自助建站到底好还是不好镜像文件是什么什么是镜像文件啊硬盘人500G的硬盘容量是多少啊?开机滚动条如何关闭开机滚动条?宕机宕机 这个词是什么意思啊网络虚拟机VMware虚拟机三种网络模式的区别有哪些?服务器连接异常手机WIFI检查显示主服务器连接异常,怎么办网站地图制作我想给网站做网站地图不知道怎么做的,请教高手!
免费域名注册网站 域名解析服务器 如何申请免费域名 edgecast java主机 512m内存 云图标 河南服务器 免费网站申请 godaddy域名证书 帽子云 100m独享 厦门电信 环聊 服务器硬件配置 上海联通 九零网络 .htaccess web是什么意思 美国西雅图独立 更多