2013-07-03 87 views
0

所以我想制作一个脚本,将最新的视频上传到我的YouTube频道。这里是我迄今为止...解析Youtube视频源XML

<body onLoad="loadVids()"> 
    <script> 
     function loadXMLDoc(channel) 
     { 
      if (window.XMLHttpRequest) 
       { 
       xhttp=new XMLHttpRequest(); 
       } 
      else 
       { 
       xhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
      xhttp.open("GET","https://gdata.youtube.com/feeds/api/users/"+channel+"/uploads/",false); 
      xhttp.send(); 
      return xhttp.responseXML; 
     } 

     function loadVids() { 
      var xml = loadXMLDoc("CHANNELNAME"); 


     } 


    </script> 

现在,我已经加载了XML如何获得每个视频上传?

谢谢。

回答

3

通常为了做javascript解析json数据要容易得多,youtube提供了json数据api。以下是使用youtube json data api获取视频详细信息的示例。

function loadVideosJson(channelName, callback) { 
    $.getJSON("https://gdata.youtube.com/feeds/api/users/"+channelName+"/uploads?v=2&alt=json", callback) 
} 

function onVideoLoad(data) { 
    var entries = data.feed.entry; 
    for (i=0 ; i<entries.length; i++) { 
     //Title 
     console.log(data.feed.entry[i].title["$t"]); 
     //Video thumbnail 
     console.log(data.feed.entry[i].media$group.media$thumbnail[0].url); 
     //Like that you can parse through json to get different attributes of video. 
    } 

} 
//Call above functions using 
loadVideosJson("bbc", onVideoLoad);