【问题标题】:How to get Channel Id from a YouTube channel URL using JavaScript如何使用 JavaScript 从 YouTube 频道 URL 获取频道 ID
【发布时间】:2019-11-30 09:06:02
【问题描述】:

我正在使用 YouTube API 创建一个网站,我需要获取用户频道 ID 以检索那里的数据 我如何在 JavaScript 中做到这一点 提前谢谢???

【问题讨论】:

  • 看起来您需要查看 Youtube API 并向他们发送 XML 请求。这似乎与我在谷歌搜索“来自频道 url youtube 的 javascript 频道 ID”网址后发现的这个问题非常相似:stackoverflow.com/questions/14366648/…
  • @DevinB 很好的答案。我喜欢你回答他的问题时和他问的一样详细。
  • stackoverflow.com/questions/9870512/…以上你可以得到你的答案。

标签: javascript html youtube-api


【解决方案1】:

此代码已在我的项目中运行。

你能试试这个代码吗,

也许可以用这段代码解决你的问题。

youtubeChannelId = channelName => {
  if (channelName) {
    var name = getChannelFromUrl(channelName);
    var url =
      'https://gdata.youtube.com/feeds/api/users/' +
      name +
      '?fields=id&alt=json';
    var result = UrlFetchApp.fetch(url);
    var data = Utilities.jsonParse(result.getContentText());

    if (
      typeof data['entry'] !== 'undefined' &&
      data['entry']['id']['$t'] !== 'undefined'
    ) {
      var id = 'UC' + data['entry']['id']['$t'].split('/').pop();

      return id;
    }
  }

  return '';
};

getChannelFromUrl = url => {
  var pattern = new RegExp(
    '^(https?://)?(www.)?youtube.com/(user/)?([a-z-_0-9]+)/?([?#]?.*)',
    'i',
  );
  var matches = url.match(pattern);
  if (matches) {
    return matches[4];
  }

  return url;
};

【讨论】:

    猜你喜欢
    • 2019-12-07
    • 2018-12-12
    • 2019-12-14
    • 2012-12-31
    • 2019-02-19
    • 2011-09-13
    • 2020-01-19
    • 2018-04-16
    • 2016-05-13
    相关资源
    最近更新 更多