关于优酷api获取视频json信息

来源:互联网 发布:diana krall 知乎 编辑:程序博客网 时间:2024/06/06 01:20
关于优酷的信息,我们可以从优酷api里面文档查看具体是怎么获取的具体看下面

单条视频详细信息(videos/show)

  1. 接口

    URL删除了,这边不允许外链HTTP方法GET返回格式json授权/登录false
  2. 参数

    参数类型必选默认值说明示例client_idstringtrue 应用Key video_idstringtrue 视频ID extstringfalse 视频扩展信息返回, 多个用逗号分隔thumbnails,show, dvd,file_meta,reference

看起来好像有点复杂,其实很简单,不过首先我们要注册一个优酷账号,然后申请一个api得到一个client_id(具体自己百度),然后我们就可以开始尝试了,譬如这是一个视频的url='http://v.youku.com/v_show/id_XNjkyODE5MDI0.html';我们要获取它的json,首先我们要从这个URL里面获取到视频id,也就是id_后面的13个字符,可以在js里面写一段(正则匹配)

var url = document.getElementsByName('youku')[0].value;//http://v.youku.com/v_show/id_XNjkyMzk4ODQ0.html    var re = /id_(.)*\./;//正则    var client_id = '3d01f04416cbe807';//我们注册的id    if (url.match(re) != null)    {        //匹配成功.还需要截取        var temp = url.match(re)[0];        //因为id的特殊性还需要做一下截取        var vid = temp.slice(3,16);//这个就是我们要得到的vid了。。    }else{        return;    }//拼接最后的rul url = 'https://openapi.youku.com/v2/videos/show.json?video_id=' + vid + '&client_id=' + client_id;

到这里这里我们可以尝试一下把这个网址到浏览器里面访问(或者写一个ajax来get一下,会得到返回),会得出一串奇怪的东西,也就是所谓的json,但是这一段json我们还不可以直接用的,因为它的编码很奇怪,所以我们还必须处理一下,你可以到把得到的一段json到php里面处理,使用json_decode函数,还可以直接把url传到php里面来使用file_get_conetents($url)处理,但是这里要注意。因为php默认是不允许直接访问https的,所以要在php.ini里面设置一下,把;extension=php_openssl.dll前面的;去掉,然后重启Apache就可以了。

1 0
原创粉丝点击