使用YouTube API v3时,我无法获得YouTube视频的完整描述

时间:2015-07-13 00:14:24

标签: youtube-data-api

为了检索YouTube视频的完整描述,我使用了这些代码进行处理。

String apiKey = properties.getProperty("youtube.apikey");
        search.setKey(apiKey);
        search.setQ(queryTerm)
        search.setFields("items(id/kind,id/videoId,snippet(title,description))");

`if(rId.getKind()。equals(" youtube#video")){

            System.out.println(" Video Id: " + rId.getVideoId());
            System.out.println(" Title: " + singleVideo.getSnippet().getTitle());
            System.out.println(" Description: " + singleVideo.getSnippet().getDescription());
            System.out.println("\n-------------------------------------------------------------\n");
        }`

但结果无法得到完整的描述。如果描述太长,它将切断尾部仅显示" ..."。喜欢这个描述:了解更多关于风暴英雄的信息并在这里免费玩:http://heroesofthestorm.com Facebook:http://facebook.com/BlizzHeroes Twitter:...

我想知道如何修改我的代码并获得完整的描述

1 个答案:

答案 0 :(得分:1)

我认为截断描述是Search:List调用的一个特性,而不是Java API中出现的内容。您可以通过reference documentation直接拨打电话来查看此内容。

获取描述的一种方法是连接从搜索中返回的所有视频ID,并在id字段设置为列表的情况下调用Videos:List。在Java中:

    YouTube.Videos.List list = youtube.videos().list("id, snippet");
    list.setKey(apiKey);
    list.setId(ids);
    List<Video> videos = list.execute().getItems();

变量ids是您从搜索查询中获得的ID的逗号分隔列表。

然后,您可以在每个视频上访问.getSnippet.getDescription以获取完整说明:

    for (Video targetVideo : videos) {
        System.out.println(targetVideo.getSnippet().getDescription());
    }