使用 youtube api python 获取确切的 youtuber 订阅者数量

时间:2021-06-30 23:29:29

标签: python youtube-api

我有一个 python 脚本,它确实给了我一个订阅者数量,但它被四舍五入到最接近的百万有什么方法可以得到准确的实时订阅者数量?

import urllib.request
import json

name = "PewDiePie"
key = "SECRET"

while True:
    data = urllib.request.urlopen("https://www.googleapis.com/youtube/v3/channels? 
    part=statistics&forUsername="+name+"&key="+key).read()
    subs = json.loads(data)["items"][0]["statistics"]["subscriberCount"]
    print(subs)

1 个答案:

答案 0 :(得分:1)

当使用 API 密钥访问 YouTube 数据 API 时,API 在某些情况下会返回有限的信息。例如

curl \
  'https://youtube.googleapis.com/youtube/v3/channels?part=statistics&forUsername=PewDiePie&key=[YOUR_API_KEY]' \
  --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
  --header 'Accept: application/json' \
  --compressed

四舍五入用户订阅人数。

{
  "kind": "youtube#channelListResponse",
  "etag": "WYKQJMLX47xl94l7e-SdlKeFpqA",
  "pageInfo": {
    "totalResults": 1,
    "resultsPerPage": 5
  },
  "items": [
    {
      "kind": "youtube#channel",
      "etag": "aqYfRJecxFtoy7NM2m8F_19qq7s",
      "id": "UC-lHJZR3Gqxm24_Vd_AJ5Yw",
      "statistics": {
        "viewCount": "27492358931",
        "subscriberCount": "110000000",
        "hiddenSubscriberCount": false,
        "videoCount": "4360"
      }
    }
  ]
}

现在,如果您被授权为该频道的所有者,您可能会得到正确的计数。然而,API 密钥只能让您访问公共数据,IMO 的确切数字可能被视为私有数据,并且仅交付给帐户的所有者。除非你能联系到他们,否则没有真正的方法来测试这个理论。