【问题标题】:Get subscriber count with YouTube Data API v3 on Android Studio在 Android Studio 上使用 YouTube 数据 API v3 获取订阅者数量
【发布时间】:2017-12-14 10:19:02
【问题描述】:

如何在 Android Studio 上使用 YouTube Data API v3 获取订阅者数量? 我可以播放视频,但无法获取订阅人数,谢谢。

【问题讨论】:

    标签: java android api youtube


    【解决方案1】:

    订阅者计数是Channel 类的属性。

    这是一个工作示例,可让您搜索频道,并返回所有返回结果的订阅人数。

    import com.google.api.client.http.HttpRequest;
    import com.google.api.client.http.HttpRequestInitializer;
    import com.google.api.client.http.javanet.NetHttpTransport;
    import com.google.api.client.json.jackson2.JacksonFactory;
    import com.google.api.services.youtube.YouTube;
    import com.google.api.services.youtube.YouTubeRequestInitializer;
    import com.google.api.services.youtube.model.*;
    
    import java.io.IOException;
    import java.util.*;
    
    class Main {
    
        public static final String API_KEY = "YOUR KEY HERE";
    
        public static void main(String[] args) throws Exception {
            YouTube youtube = new YouTube.Builder(
                    new NetHttpTransport(),
                    new JacksonFactory(),
                    new HttpRequestInitializer() {
                            public void initialize(HttpRequest request) throws IOException {
                    }
            })
            .setApplicationName("youtube-cmdline-search-sample")
            .setYouTubeRequestInitializer(new YouTubeRequestInitializer(API_KEY))
            .build();
    
    
            Scanner input = new Scanner(System.in);
    
            System.out.println("Search for channel:");
            String queryTerm = input.nextLine();
    
            YouTube.Search.List search = youtube.search().list("snippet");
            search.setQ(queryTerm);
            search.setType("channel");
    
            SearchListResponse searchResponse = search.execute();
            List<SearchResult> searchResultList = searchResponse.getItems();
            if (searchResultList != null) {
                for (SearchResult searchResult : searchResultList) {
                    String channelId = searchResult.getSnippet().getChannelId();
    
                    YouTube.Channels.List channels = youtube.channels().list("snippet, statistics");
                    channels.setId(channelId);
    
                    ChannelListResponse channelResponse = channels.execute();
    
                    for (Channel c : channelResponse.getItems()) {
                        System.out.println("Name: " + c.getSnippet().getTitle());
                        System.out.println("Subs: " + c.getStatistics().getSubscriberCount());
                        System.out.println();
                    }
                }
            }
    
        }
    
    }
    

    输入:H3 Podcast,你会得到结果:

    Name: H3 Podcast
    Subs: 511821
    
    Name: h3h3Productions
    Subs: 4241196
    
    Name: The H3 Podcast
    Subs: 2
    
    Name: Baited!
    Subs: 236641
    
    Name: Ethan and Hila
    Subs: 1633842
    

    我不确定是否有更好的方法,但它确实有效。

    【讨论】:

    • 我看到了频道统计信息。但是,我该如何使用它?我是 API 新手。
    【解决方案2】:

    试试这个 youtube api

    https://www.googleapis.com/youtube/v3/channels?part=statistics&id=CHANNEL_ID&key=YOUR_API_KEY
    

    希望这有帮助;

    【讨论】:

      猜你喜欢
      • 2015-08-23
      • 1970-01-01
      • 2015-10-03
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 2018-05-29
      相关资源
      最近更新 更多