2015-10-14 43 views
1

我试图使用关键字从YouTube获取视频。我正在使用YouTube API Java库。 我可以成功获得前50条记录,但要获取下一条记录,则需要设置nextPageToken。但我得到了nextPageToken null。以下是我的代码。Youtube搜索:获取PageInfo和nextPageToken的列表null

YouTube.Search.List search = youtube.search().list("id,snippet"); 
search.setOauthToken(credential.getAccessToken()); 
search.setMaxResults(50L); 
search.setQ(keywords); // keywords is string type and input by user. 
search.setType("video"); 
search.setFields("items(id/kind,id/videoId,snippet/title,snippet/thumbnails/default/url)"); 

VideoList returnList = new VideoList(); 

    do { 

     search.setKey("MYKEY"); 
     SearchListResponse searchResponse = search.execute(); 
     // This get 50 items proper. 
     List<SearchResult> searchResultList = searchResponse.getItems(); 


     // Why PageInfo is null? 
     PageInfo pageInfo = searchResponse.getPageInfo(); 

     // int totalResults = pageInfo.getTotalResults(); 
     // int pageSize = pageInfo.getResultsPerPage(); 

     if(searchResponse != null){ 
      // i use searchResultList and update my database for search. 
      .... 
      .... 

      // PageToken also null. 
      String pageToken = searchResponse.getNextPageToken(); 
      search.setPageToken(pageToken); 
     } 
     else{ 
      break; 
     } 
    } while (true); 
    }catch(Exception ex){ 
     ex.printStackTrace(); 
    } 
+0

我已经研究过[email list]( https://code.google.com/p/gdata-issues/issues/detail?id=7163)。 – jagad89

+0

我也试过[this](http://stackoverflow.com/questions/30263293/youtube-subscriptions-list-api-v3-nextpagetoken-isnt-available/30263572#30263572)解决方案。但很多时候我得到了无效的页面令牌异常消息。 – jagad89

回答

5

你得到空,因为你没有提到的nextPageToken或pageinfo领​​域, 搜索结果集是有限的,当你设置的字段明确。

search.setFields("items(kind,id/kind,id/videoId,snippet/title,snippet/thumbnails/default/url),nextPageToken,pageInfo,prevPageToken"); 

System.out.println("PAGE INFO: " +response.getPageInfo()); 

System.out.println("next page token :" +response.getNextPageToken()); 

System.out.println("prev page token:"+ response.getPrevPageToken()); 

输出: 输入搜索词

扑克脸

页面信息:{ “resultsPerPage”:2, “使用totalResults”:667891}

下一页令牌:CAIQAA

prev page token:null

+0

谢谢。有用 :) – jagad89