Downloading captions always returns a 403

前端 未结 4 1381
抹茶落季
抹茶落季 2020-12-16 03:01

When I call the captions.download endpoint with an ID that we retrieve from the captions.list endpoint, it always returns a 403. For example:

相关标签:
4条回答
  • 2020-12-16 03:37

    Status 403 Forbidden means that nobody has the right to access that URL. You shouldn't receive that message if you have the wrong API key, for example; that should give Status 401 Unauthorised. I'd check the URL carefully.

    0 讨论(0)
  • 2020-12-16 03:38

    Instead caption download API that sometimes returns 403 (if video not have enabled third-party contributions for this caption) you can use youtube.com/api/timedtext

    0 讨论(0)
  • 2020-12-16 03:45

    what you wrote above about "only works for videos your google account owns" is not my experience. I just successfully ran captions.download on a video (about dog training) which I definitely do not own - do not even have a dog. However, I have tested the exact same code on the video mentioned here on stackoverflow and get a 403 error.

    So no it doesn't always return a 403 sometimes it returns a 200! Try it with the dog video mentioned above:

    python captions.py --videoid="=jBN2_YuTclU" --action="download" --captionid='8S2GjnNfitU5HHoLyTeLxq_W1dP29YRFC8E8vFBUtws='
    

    with the code you probably already have here.

    It will need your client_secrets.json downloaded from the Google credentials page somewhere and a missing file youtube-v3-api-captions.json which you can get from here. The code launches a browser where you log in for OAuth2 authorisation.

    Still, there must be a reason why it works for some videos and not others. @Abhishek might have it above. The wrong comment has been upvoted there. Nothing in the output of captions.list for a video that allows captions downloads and a video that does not is obviously different which would explains why one works and the other does not. If anyone can supply which {'key':'value'} pair in the youtube api controls this would be helpful.

    0 讨论(0)
  • 2020-12-16 03:55

    From the YouTube API docs:

    403 Forbidden: The permissions associated with the request are not sufficient to download the caption track. The request might not be properly authorized, or the video order might not have enabled third-party contributions for this caption.

    0 讨论(0)
提交回复
热议问题