2013-08-20 35 views
2

嗨我想在网页中嵌入youtube评论并搜索答案并找到此代码。 <feed> <entry> ... <media:group> ... </media:group> <gd:comments> <gd:feedLink href='http://gdata.youtube.com/feeds/api/videos/4eYSpIz2FjU/comments'/> </gd:comments> </entry> </feed>在网页中嵌入Youtube评论

我试图将这段代码包含在一个页面内进行测试,但它的剂量显示评论。
但是当我访问这个网址
http://gdata.youtube.com/feeds/api/videos/4eYSpIz2FjU/comments 评论显示成功。 我是否错误地嵌入它。我是否应该包含任何其他脚本引用来访问youtube评论? 任何人可以详细说明这种方法或建议任何其他方法吗?
谢谢,
Shrikanth

+0

不知从Youtube的API不多,但我发现[另一个话题](http://stackoverflow.com/questions/10941803/using-youtube-api-to-get -all-comments-from-a-video-with-the-json-feed) – 2013-08-20 18:00:30

+0

@SergioMarconni谢谢你的回复.......我会通过它 –

回答

1

我找到了工作液,有人在几年前发布this代码,我并不把它的信用。

我在我的网站上测试过它,它工作得很好。

你显然要添加样式并删除一些内联html样式。在旁注中,您将需要添加视频ID。如果您不知道如何执行此操作,请将PHP调用(<?php echo $_GET['v']; ?>)替换为id,或者直接在PHP中的某处定义v。注意:如果你要手动添加ID的话,有2个地方你必须这样做..希望它有帮助。

<html> 
<head> 
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.min.js"></script> 
    <script type= "text/javascript"> 
    function getYouTubeInfo() { 
      $.ajax({ 
        url: "http://gdata.youtube.com/feeds/api/videos/<?php echo $_GET['v']; ?>?v=2&alt=json", 
        dataType: "jsonp", 
        success: function (data) { parseresults(data); } 
      }); 
    } 

    function parseresults(data) { 
      var title = data.entry.title.$t; 
      var description = data.entry.media$group.media$description.$t; 
      var viewcount = data.entry.yt$statistics.viewCount; 
      var author = data.entry.author[0].name.$t; 
      $('#title').html(title); 
      $('#description').html('<b>Description</b>: ' + description); 
      $('#extrainfo').html('<b>Author</b>: ' + author + '<br/><b>Views</b>: ' + viewcount); 
      getComments(data.entry.gd$comments.gd$feedLink.href + '&max-results=50&alt=json', 1); 
    } 

    function getComments(commentsURL, startIndex) { 
      $.ajax({ 
        url: commentsURL + '&start-index=' + startIndex, 
        dataType: "jsonp", 
        success: function (data) { 
        $.each(data.feed.entry, function(key, val) { 
          $('#comments').append('<br/>Author: ' + val.author[0].name.$t + ', Comment: ' + val.content.$t); 
        }); 
        if ($(data.feed.entry).size() == 50) { getComments(commentsURL, startIndex + 50); } 
        } 
      }); 
    } 

    $(document).ready(function() { 
      getYouTubeInfo(); 
    }); 
    </script> 
    <title>YouTube</title> 
</head> 
<body bgcolor="grey"> 
    <div align="center"> 
      <br/><br/> 
      <div id="title" style="color: #dddddd">Could not find a title</div><br/> 
      <iframe title="Youtube Video Player" width="640" height="390" src="http://www.youtube.com/embed/<?php echo $_GET['v']; ?>?fs=1&autoplay=1&loop=0" frameborder="0" allowfullscreen style="border: 1px solid black"></iframe> 
      <br/><br/> 
      <div id="description" style="width:400px; background-color: #dddddd; font-size:10px; text-align:left;">Could not find a description</div> 
      <div id="extrainfo" style="width:400px; background-color: #dddddd; font-size:10px; text-align:left;">Could not find extra information</div> 
      <div id="comments" style="width:400px; background-color: #dddddd; font-size:10px; text-align:left;">Could not find comments</div> 
    </div> 

+0

谢谢,我会试试这个,回来 –

+1

yup !.......那有效!! ....你的回答对我真的很有帮助 –