YouTube JSON mit jQuery auslesen

Dustin84

Erfahrenes Mitglied
Hallo,

ich versuche gerade YouTube Playlisten auszulesen und auf meiner Website anzuzeigen.
Das klappt auch aber ich verstehe noch nicht ganz, wie ich die JSON auslesen kann.

Zum auslesen benutze ich $.getJSON (jQuery).

Wie kann ich z.B. die Felder description oder tags auslesen?

Gruß
Dustin


Hier meine HTML Struktur:
PHP:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>

<script src="http://code.jquery.com/jquery-1.7.min.js"></script>
<script type="text/javascript">

// http://code.google.com/intl/de-DE/apis/youtube/articles/view_youtube_jsonc_responses.html
var playListURL = 'http://gdata.youtube.com/feeds/api/playlists/B2A4E1367126848D?v=2&alt=json&callback=?';
var videoURL= 'http://www.youtube.com/watch?v=';

$.getJSON(playListURL, function(data) {
    var list_data = "";
    $.each(data.feed.entry, function(i, item) {
				var feedTitle = item.title.$t;
        var feedURL = item.link[1].href;
				var fragments = feedURL.split("/");
        var videoID = fragments[fragments.length - 2];
        var url = videoURL + videoID;
        var thumb = "http://img.youtube.com/vi/"+ videoID +"/default.jpg";
        list_data += '<li><a href="'+ url +'" title="'+ feedTitle +'"><img alt="'+ feedTitle+'" src="'+ thumb +'"</a></li>';
    });
    $(list_data).appendTo(".cont");
});	

</script>
</head>

<body>
  <ul class="cont">
  
  </ul>
</body>
</html>

Die entsprechende JSON könnt ihr hier einsehen:
Code:
{
 'apiVersion': '2.1',
 'data': {
   'id': 'B2A4E1367126848D',
   'author': 'dbcforgotten',
   'title': '2',
   'thumbnail': {
     'sqDefault': 'http://i.ytimg.com/vi/_IH4mf_rlWc/default.jpg',
     'hqDefault': 'http://i.ytimg.com/vi/_IH4mf_rlWc/hqdefault.jpg'
   },
   'content': {
     '5': 'http://www.youtube.com/p/B2A4E1367126848D'
   },
   'totalItems': 100,
   'startIndex': 1,
   'itemsPerPage': 1,
   'items': [
     {
       'id': '1so3ar4-DKIpRdZzl1VItAovU1tl1KyR',
       'position': 1,
       'author': 'dbcforgotten',
       'video': {
         'id': '_IH4mf_rlWc',
         'uploaded': '2011-06-22T20:44:31.000Z',
         'updated': '2012-01-21T10:20:42.000Z',
         'uploader': 'buch5234',
         'category': 'Music',
         'title': 'Bat Ventsi Feat.Goodslav, Buch And 100 KILA - Kradi, Kradi',
         'description': 'Official Video Link 4 Downloud    http://dox.bg/files/dw?a=c91f7f59ae',
         'tags': [
           'kradi bat ventsi',
           'buch',
           '100 kila',
           'kradi kradi',
           'kradi'
         ],
         'thumbnail': {
           'sqDefault': 'http://i.ytimg.com/vi/_IH4mf_rlWc/default.jpg',
           'hqDefault': 'http://i.ytimg.com/vi/_IH4mf_rlWc/hqdefault.jpg'
         },
         'player': {
           'default': 'http://www.youtube.com/watch?v=_IH4mf_rlWc&feature=youtube_gdata_player',
           'mobile': 'http://m.youtube.com/details?v=_IH4mf_rlWc'
         },
         'content': {
           '5': 'http://www.youtube.com/v/_IH4mf_rlWc?version=3&f=playlists&app=youtube_gdata',
           '1': 'rtsp://v7.cache1.c.youtube.com/CiULENy73wIaHAlnlev_mfiB_BMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp',
           '6': 'rtsp://v6.cache5.c.youtube.com/CiULENy73wIaHAlnlev_mfiB_BMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp'
         },
         'duration': 200,
         'aspectRatio': 'widescreen',
         'rating': 4.9239116,
         'likeCount': '8406',
         'ratingCount': 8569,
         'viewCount': 1056148,
         'favoriteCount': 5363,
         'commentCount': 1517,
         'accessControl': {
           'comment': 'allowed',
           'commentVote': 'allowed',
           'videoRespond': 'moderated',
           'rate': 'allowed',
           'embed': 'allowed',
           'list': 'allowed',
           'autoPlay': 'allowed',
           'syndicate': 'allowed'
         }
       }
     }
   ]
 }
}
 

rd4eva

Erfahrenes Mitglied
Die entsprechende JSON könnt ihr hier einsehen:

Wie kommst du darauf?
Wenn es so aussehen würde würdest du per data.feed.entry nicht viel zurück bekommen.
Ich wüde ja posten wie es wirklich aussieht aber 6450 Zeilen sind dann doch etwas happig.
Mach einfach mal ein console.log(data); und schau dir das Objekt in der Konsole an.

Der Pfad (im eigentlichen) JSON objekt z.B. zur description sieht so aus:
Code:
data.feed.entry[entryNum].media$group.media$description.$t;