获取真实地址解析方法youku

flv地址解析  时间:2021-02-15  阅读:()

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

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) 

Ceranetworks顶级合作伙伴 香港E3 16G 299元 香港E5 32G 650元 美国E3 16G 650元

提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...

RackNerd美国大硬盘服务器促销:120G SSD+192TB HDD,1Gbps大带宽,月付$599,促销美国月付$服务器促销带宽

racknerd怎么样?racknerd最近发布了一些便宜美国服务器促销,包括大硬盘服务器,提供120G SSD+192TB HDD,有AMD和Intel两个选择,默认32G内存,1Gbps带宽,每个月100TB流量,5个IP地址,月付$599。价格非常便宜,需要存储服务器的朋友可以关注一下。RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新泽西机房基于KVM虚拟化的VPS、...

新注册NameCheap账户几天后无法登录原因及解决办法

中午的时候有网友联系提到自己前几天看到Namecheap商家开学季促销活动期间有域名促销活动的,于是就信注册NC账户注册域名的。但是今天登录居然无法登录,这个问题比较困恼是不是商家跑路等问题。Namecheap商家跑路的可能性不大,前几天我还在他们家转移域名的。这里简单的记录我帮助他解决如何重新登录Namecheap商家的问题。1、检查邮件让他检查邮件是不是有官方的邮件提示。比如我们新注册账户是需...

flv地址解析为你推荐
yy频道中心YY怎么进入频道中心手游运营手册剑三的方士使开启阴阳之力凝聚而成的魂匣怎么做啊 有详细说明吗照片转手绘如何把真人图片用photoshop做成手绘图片今日热点怎么删除今日热点自动弹出怎么卸载或屏蔽镜像文件是什么什么是文件镜像?什么是镜像文件?办公协同软件oa办公系统软件有哪些xp系统停止服务xp系统停止服务怎么办mate8价格华为mate8 128g售价多少钱bt封杀BT下载被封锁了,怎么办,下载不了电影了!铁路客服中心铁路客户服务中心怎么订票
香港虚拟空间 论坛虚拟主机 西部数码vps 怎么申请域名 抢票工具 贵州电信宽带测速 php探针 免费ftp站点 anylink vip购优惠 免费高速空间 服务器是干什么用的 独享主机 网站加速软件 web应用服务器 国外在线代理服务器 华为k3 测速电信 好看的空间 hdsky 更多