Parsing YouTube’s JSON data in Flash
To save other people from this headache:
import com.adobe.serialization.json.JSON;
var loader :URLLoader = new URLLoader();
var vid : String = "qE5hpp4YaH4";
loader.load(new URLRequest("http://gdata.youtube.com/feeds/api/videos/" + vid + "?v=2&alt=json-in-script&callback=remove"))
loader.addEventListener(Event.COMPLETE, onLoaded)
function onLoaded(e:Event):void{
var youTubeDataString : String = e.target.data
youTubeDataString=youTubeDataString.split("remove(").join("");
youTubeDataString=youTubeDataString.split(");").join("");
var youTubeDataObject : Object =JSON.decode(youTubeDataString)
trace("Title: " + youTubeDataObject.entry.title.$t)
var thumbnails : Object = youTubeDataObject.entry.media$group.media$thumbnail;
trace("Thumbnail: " + youTubeDataObject.entry.media$group.media$thumbnail[thumbnails.length-1].url)
trace("Description: " + youTubeDataObject.entry.media$group.media$description.$t)
}
The thumbnail section of this code grabs the HQ version which is 480×360 and is the last entry in the response JSON’s media$thumbnail area.
Good info: http://911-need-code-help.blogspot.com/2010/01/retrieve-youtube-video-title.html