I want to get youtube videos from youtube api using json request. Now i get videos from youtube using json. Example the url have some deleted videos (http://www.youtube.com/watch?v=MlOHWLqgcoY&list=PLD62D6701B15FD3E1) but i get only playing videos not deleted videos. Is it possible or any other way to handle youtube deleted videos using json results.
This is my code to get youtube videos
string getPlaylistVideoUrl = https://gdata.youtube.com/feeds/api/playlists/PLD62D6701B15FD3E1?v=2&safeSearch=strict&orderby=position&start-index=1&max-results=25&alt=json;
var webRequest = (HttpWebRequest)WebRequest.Create(getPlaylistVideoUrl);
using (WebResponse response=await webRequest.GetResponseAsync())
using (Stream responseStream=response.GetResponseStream())
using (StreamReader reader = new StreamReader(responseStream))
{
var jsonResult = reader.ReadToEnd();
var videosList = JsonConvert.DeserializeObject<YouTubeVideosByPlaylist>(jsonResult);
if (videosList.Feed != null)
{
if (videosList.Feed.Entry != null)
{
//Add entries to class
}
}
Thanks in advance.
From the Google documentation "If a video is not playable, the entry for that video will not contain a <media:content> tag. In addition, the entry may contain an <app:control> tag that contains an explanation of why the video is not playable"
https://developers.google.com/youtube/2.0/developers_guide_protocol_testing
Videos that are not playable will normally have
app$control
elements set in their JSON response when retrieved using v2 of the Data API. Here's an example of what to look for in your response JSON:There are other reasons why a video might not be playable in a given playback scenario, so the absence of
app$control
doesn't ensure that the video can always be played. But ifapp$control
is there, then the video can't be played.i solve the youtube deleted videos problem. if you get the playlist to given format=6 in the youtube api Url.