如何从YouTube获取频道ID?

kla*_*kpm 86 youtube youtube-api

我正在尝试使用YouTube Data API V3从我的频道中检索数据.
为此,我需要我的频道ID.
我试图从我的YouTube帐户中找到我的频道ID,但我在每一个方面都失败了.
如果有人对我有一个提示,我会非常高兴.

这是我用来检索数据的URL:

https://www.googleapis.com/youtube/v3/channelsid = fjTOrCPnAblTngWAzpnlMA&key = {YOUR_API_KEY}&part = snippet,contentDetails,statistics

ID用于频道ID和密钥,我正在使用我的Google API控制台生成的API密钥替换{YOUR_API_KEY}.

我的频道ID不是:
- klauskkpm
- klausmachado
- klausmachado@gmail.com
- fjTOrCPnAblTngWAzpnlMA

我的频道是:http://www.youtube.com/user/klauskkpm

小智 162

要获取频道ID,您可以查看频道页面的源代码并找到data-channel-external-id="UCjXfkj5iapKHJrhYfAF9ZGg""externalId":"UCjXfkj5iapKHJrhYfAF9ZGg".

UCjXfkj5iapKHJrhYfAF9ZGg 将是您要查找的频道ID.

  • 这也适用:查看页面源代码并搜索`<link rel="canonical"`。`href` 将包含频道 ID。 (14认同)
  • 您可能必须现在搜索"externalId",因为我找不到"channel-external-id"的任何内容 (12认同)
  • 救了我的一天!thnks (2认同)
  • 这应该是可接受的答案,我正在搜索任何youtube频道ID,而不是我的频道ID.这个答案对我有帮助. (2认同)
  • @Naveed Ahmad因为这个答案很有帮助,所以不应该使用视图(在这种情况下是HTML),因为它不可靠.无论如何,他们都不会提供HTML版本或提供API访问权限.要获取任何YouTube频道ID,最好使用**mjlescano**答案,该答案使用YouTube API. (2认同)
  • @klauskpm 是的,因为您正在寻找自己的 id,但是这个答案可以为您提供任何频道 ID,并且 3 年后仍然可以这样做:) (2认同)

kla*_*kpm 73

编辑:这个答案已经过时且不完整.现在它可以轻松地帮助每个人.

答案很简单,您的YouTube频道ID为UC + {YOUR_ACCOUNT_ID}.为了确保您的YouTube频道ID或YouTube帐户的ID,访问高级设置你的设置页面

如果您想知道任何频道的YouTube频道ID,可以使用@mjlescano提供的解决方案.

https://www.googleapis.com/youtube/v3/channels?key={YOUR_API_KEY}&forUsername={USER_NAME}&part=id
Run Code Online (Sandbox Code Playgroud)

如果这可能是任何帮助,一些用户将其标记在另一个话题解决在这里.

希望它有所帮助.


Der*_*ter 23

http://johnnythetank.github.io/youtube-channel-name-converter(Youtube用户名到频道ID转换器)

基于此API调用的转换器: https://www.googleapis.com/youtube/v3/channels?key={YOUR_API_KEY}&forUsername={USER_NAME}&part=id


mjl*_*ano 21

您可以使用过滤器"forUsername"获取用户名(在您的情况下为"klauskkpm")的频道ID,如下所示:

https://www.googleapis.com/youtube/v3/channels?key={YOUR_API_KEY}&forUsername=klauskkpm&part=id
Run Code Online (Sandbox Code Playgroud)

有关详情,请访问:https://developers.google.com/youtube/v3/docs/channels/list

  • 正如其他阅读本文的人所注意的那样,它并不总是有效。请参阅[此处](/sf/ask/4380348241/) 和[此处]( /sf/ask/2608712711/) (7认同)

Kos*_*asX 19

更新时间:2023

  1. 转到YouTube 频道的“关于”选项卡

  2. 在该Stats部分下单击Share按钮并选择复制通道 ID

在此输入图像描述


Avi*_*ran 16

2021 年 6 月版。

  1. 右键单击并查看页面源代码。
  2. 搜索"externalId",值如下。

资料来源:丹尼尔2017 年评论

替代方案:在控制台中运行此 JavaScript:

ytInitialData.metadata.channelMetadataRenderer.externalId
Run Code Online (Sandbox Code Playgroud)


kan*_*kyu 11

在任何有"用户"网址的频道页面上,例如http://www.youtube.com/user/klauskkpm,没有API调用,从YouTube用户界面点击该频道的视频(在其"视频"标签中),然后点击视频上的频道名称.然后,您可以使用其"频道"网址访问该页面https://www.youtube.com/channel/UCfjTOrCPnAblTngWAzpnlMA.

  • 它不再工作了 (8认同)
  • 这应该引起更多关注。如此简单的解决方案。 (4认同)

ell*_*kie 11

截至 2022 年 6 月 23 日:

打开 Chrome 开发工具 (F12),然后在源代码窗格中的“元素”选项卡中,根据 URL 类型:

A. 对于类型为www.youtube.com/c/ <channel_name> 的频道网址:

搜索:

或在控制台中运行:

ytInitialData.metadata.channelMetadataRenderer.externalId
Run Code Online (Sandbox Code Playgroud)

(信用:https ://stackoverflow.com/a/68063136/624597 )

B. 对于以下类型的视频 URL:www.youtube.com/watch?v = <video_ID>:

搜索:

  • “externalId” - 旁边是channel_ID
  • “externalChannelId” - 旁边是channel_ID
  • “ownerProfileUrl” - 旁边会有:https : //www.youtube.com/channel/ <channel_ID>

或在控制台中运行:

ytInitialPlayerResponse.microformat.playerMicroformatRenderer.externalChannelId
Run Code Online (Sandbox Code Playgroud)


Lin*_*abe 7

我找到了找到任何YouTube频道的频道ID的最简单方法!

第1步:播放该频道的视频.

第2步:点击该视频下的频道名称.

第3步:查看浏览器地址栏.

  • 现在已经不行了。 (10认同)

Vas*_*lis 6

如果您登录YouYube网站并选择"我的频道",则可以非常轻松地获取当前YouTube版本的频道ID

我的频道

您的频道ID将显示在浏览器的地址栏中 频道ID


Art*_*újo 5

无需 API 即可通过频道 url 获取 youtube 频道 ID的替代方法

function get_youtube_channel_ID($url){
  $html = file_get_contents($url);
  preg_match("'<meta itemprop=\"channelId\" content=\"(.*?)\"'si", $html, $match);
  if($match && $match[1])
    return $match[1];
}
Run Code Online (Sandbox Code Playgroud)


Mhm*_*z_A 5

channelId显然视频页面的源代码中有一个属性;

在此输入图像描述