2009-10-05 16 views
6

Estoy intentando obtener el feed de comentarios de una entrada de video usando la API de YouTube para .NET. Estoy trabajando en un programa en WPF y C#, pero no puedo dar la casualidad de que encuentre la manera de recuperar este feed.YouTube API Comentarios Feed

Traté de mirar el YouTube API Developer's Guide, pero parece que falta algo de información sobre Feeds de comentarios (cerca de la parte inferior de la página).

Respuesta

-1
YouTubeRequest request = ... // Your request object  
Video v = ... // Your video object 
Feed<Comment> comments = request.GetComments(v); 

comments.entries contendrá todos los comentarios para el video v Comment como objetos, por lo que no tienen que meterse con la alimentación en absoluto.

1

Esto ha cambiado en la versión 3 de la API de YouTube. Hay un nuevo punto final llamado commentThreads/list que le permite devolver un hilo de comentarios para un recurso.

Si desea devolver una lista de comentarios en un recurso de video, configure una solicitud GET con part=id,snippet y videoId=[VIDEO_ID]. Voy a estar utilizando https://www.youtube.com/watch?v=HwNIDcwfRLY como ejemplo:

HTTP GET https://www.googleapis.com/youtube/v3/commentThreads?part=id%2Csnippet&videoId=HwNIDcwfRLY&key={YOUR_API_KEY} 

Usemos el primer comentario devuelve como un ejemplo:

{ 
    "kind": "youtube#commentThread", 
    "etag": "\"DsOZ7qVJA4mxdTxZeNzis6uE6ck/jhK_kJqnNF8_fiRI_o7w6ehubv8\"", 
    "id": "z120sfshyxzewt1nx23sevyr1vu1jd2pr04", 
    "snippet": { 
     "videoId": "HwNIDcwfRLY", 
     "topLevelComment": { 
      "kind": "youtube#comment", 
      "etag": "\"DsOZ7qVJA4mxdTxZeNzis6uE6ck/h903NemnXx-8Hfe6lRIYCFERSe4\"", 
      "id": "z120sfshyxzewt1nx23sevyr1vu1jd2pr04", 
      "snippet": { 
      "authorDisplayName": "mach-a-chine seahawksgoonie", 
      "authorProfileImageUrl": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/photo.jpg?sz=50", 
      "authorChannelUrl": "http://www.youtube.com/channel/UCBmJ0sw7plIZHLvhfz7oo_w", 
      "authorChannelId": { 
       "value": "UCBmJ0sw7plIZHLvhfz7oo_w" 
      }, 
      "videoId": "HwNIDcwfRLY", 
      "textDisplay": "", 
      "authorGoogleplusProfileUrl": "https://plus.google.com/102274783439566633837", 
      "canRate": true, 
      "viewerRating": "none", 
      "likeCount": 0, 
      "publishedAt": "2016-02-05T03:42:35.158Z", 
      "updatedAt": "2016-02-05T03:42:35.158Z" 
      } 
     }, 
     "canReply": true, 
     "totalReplyCount": 0, 
     "isPublic": true 
    } 
} 

Tenga en cuenta que el comentario no es en realidad en este objeto topLevelComment. textDisplay devuelve la cadena vacía, que es known issue con la API de YouTube. Tenemos que hacer una solicitud adicional a commentThreads/list con id=[COMMENT_ID], donde [COMMENT_ID] es topLevelComment.id:

HTTP GET https://www.googleapis.com/youtube/v3/commentThreads?part=id%2Csnippet&id=z120sfshyxzewt1nx23sevyr1vu1jd2pr04&key={YOUR_API_KEY} 

diccionario de la respuesta resultante snippet tendrá el comentario del usuario como el valor de la clave textDisplay:

"snippet": { 
    "authorDisplayName": "mach-a-chine seahawksgoonie", 
    "authorProfileImageUrl": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/photo.jpg?sz=50", 
    "authorChannelUrl": "http://www.youtube.com/channel/UCBmJ0sw7plIZHLvhfz7oo_w", 
    "authorChannelId": { 
      "value": "UCBmJ0sw7plIZHLvhfz7oo_w" 
    }, 
    "videoId": "HwNIDcwfRLY", 
    "textDisplay": "my next ring tone! yeah boy!\ufeff", 
    "authorGoogleplusProfileUrl": "https://plus.google.com/102274783439566633837", 
    "canRate": true, 
    "viewerRating": "none", 
    "likeCount": 0, 
    "publishedAt": "2016-02-05T03:42:35.158Z", 
    "updatedAt": "2016-02-05T03:42:35.158Z" 
    } 
} 

El el comentario es: "¡mi próximo tono de llamada! ¡Sí muchacho!"

Tenga en cuenta que también puede pasar una lista de hasta 50 comas id o videoId cadenas de objetos de comentarios para recuperar por llamada API.

Consulte la guía Retrieve comments for a video para obtener información adicional y código de muestra.

Cuestiones relacionadas