通过API检索YouTube频道数据分析

时间:2012-01-14 00:03:44

标签: java youtube-api gdata-api insight youtube-channels

我正在使用以下代码获取我的渠道洞察数据的链接。 不知何故,我的代码返回null作为链接。

/ * 代码 * ** /

public static final String FEED_URL =  "http://gdata.youtube.com/feeds/api/users/mychannelname/uploads";  //i put my channel's name in 'mychannelname'

String username = "mygmailid";    //here i entered my gmail id eg. mikeme@gmail.com
String password = "mypassword";
String developerKey = "AI39si7ffVeKWbG1k37***********************************************" //developer key

YouTubeService service = new YouTubeService( username  ,developerKey);  //just put username instead of clientid since client id no longer available
try {
    service.setUserCredentials(username, password);
    } catch (AuthenticationException e) {
    System.out.println("Invalid login credentials.");
    System.exit(1);
    }

Query query = null;
try { 
    query = new Query(new URL( FEED_URL)); 
    } catch (MalformedURLException e) { 
    //TODO Auto-generated catch block 
    e.printStackTrace(); 
    }

ChannelFeed channelFeed = null;

try { 
    channelFeed = service.query(query, ChannelFeed.class); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace();
    } catch (ServiceException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace();
}

    System.out.println(channelFeed.getEntries() + ":"); 
    System.out.println(" Link : "+channelFeed.getLink("http://gdata.youtube.com/schemas/2007#insight.views", "text/html") + ":");

/ * ** * **** END * ** * ** * *** /

我在这里获得null作为链接

任何人都可以帮助我找到这里出了什么问题吗?

谢谢, 麦克

1 个答案:

答案 0 :(得分:0)

很可能返回null,因为它找不到与您提供的相对名称对应的链接。由于渠道洞察信息仅适用于与您进行身份验证的用户对应的渠道,因此可能是因为它未授权您的用户查看该渠道洞察数据,这可能是因为您的Google帐户未与您的YouTube关联帐户。

我会尝试打印出您要回复的回复,以确保您获得了您认为正在获得的所有数据。