使用 Python 将 youtube 视频添加到播放列表 [英] Adding youtube video to playlist using Python

查看:31
本文介绍了使用 Python 将 youtube 视频添加到播放列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在创建一个脚本,以使用 Google 的 YouTube 数据 API 版本 3 将视频上传到 youtube.
对于上传,我遵循了 https://developers.google.com/youtube/v3/guides/uploading_a_video

I am creating a script to upload videos to youtube using Google's YouTube data API version 3.
for uploading I followed the example given at https://developers.google.com/youtube/v3/guides/uploading_a_video

现在我想将上传的视频添加到我的 youtube 频道的播放列表中.我没有找到在 Python 中为 YouTube Data API 版本 3 执行此操作的任何示例代码.

now I want to add uploaded video to playlist in my youtube channel. I did not find any example code for doing this in Python for YouTube Data API version 3.

这个问题给了我答案,但它适用于旧版本(版本1) Youtube 数据 API

This question is giving me answer but its for older version(version 1) of Youtube Data API

我猜developers.google.com/youtube/v3/docs/playlistItems/insert 可以帮助我,但我不确定在youtube.playlistItem().insert() 中要传递给insert() 的参数)

I guess developers.google.com/youtube/v3/docs/playlistItems/insert can help me, but I am not sure of arguments to be passed into insert() in youtube.playlistItem().insert()

我正在寻找一些帮助或示例代码,以便使用 Python for API v3 在播放列表中添加视频.

I am looking for some help or example code to add video in playlist using Python for API v3.

推荐答案

代码是:

    import httplib2
    import os
    import sys

    from apiclient.discovery import build
    from apiclient.errors import HttpError
    from oauth2client.client import flow_from_clientsecrets
    from oauth2client.file import Storage
    from oauth2client.tools import argparser, run


    # The CLIENT_SECRETS_FILE variable specifies the name of a file that contains
    # the OAuth 2.0 information for this application, including its client_id and
    # client_secret. You can acquire an OAuth 2.0 client ID and client secret from
    # the Google Cloud Console at
    # https://cloud.google.com/console.
    # Please ensure that you have enabled the YouTube Data API for your project.
    # For more information about using OAuth2 to access the YouTube Data API, see:
    #   https://developers.google.com/youtube/v3/guides/authentication
    # For more information about the client_secrets.json file format, see:
    #   https://developers.google.com/api-client-library/python/guide/aaa_client_secrets

    CLIENT_SECRETS_FILE = "client_secrets.json"

    # This variable defines a message to display if the CLIENT_SECRETS_FILE is
    # missing.
    MISSING_CLIENT_SECRETS_MESSAGE = """
    WARNING: Please configure OAuth 2.0

    To make this sample run you will need to populate the client_secrets.json file
    found at:

    %s

    with information from the Cloud Console
    https://cloud.google.com/console

    For more information about the client_secrets.json file format, please visit:
    https://developers.google.com/api-client-library/python/guide/aaa_client_secrets
    """ % os.path.abspath(os.path.join(os.path.dirname(__file__),
                               CLIENT_SECRETS_FILE))

    # This OAuth 2.0 access scope allows for full read/write access to the
    # authenticated user's account.
    YOUTUBE_SCOPE = "https://www.googleapis.com/auth/youtube"
    YOUTUBE_API_SERVICE_NAME = "youtube"
    YOUTUBE_API_VERSION = "v3"


    def get_authenticated_service():
        flow = flow_from_clientsecrets(CLIENT_SECRETS_FILE, scope=YOUTUBE_SCOPE,
        message=MISSING_CLIENT_SECRETS_MESSAGE)

        storage = Storage("%s-oauth2.json" % sys.argv[0])
        credentials = storage.get()

        if credentials is None or credentials.invalid:
            credentials = run(flow, storage)

        return build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION,
            http=credentials.authorize(httplib2.Http()))


    def add_video_to_playlist(youtube,videoID,playlistID):
      add_video_request=youtube.playlistItem().insert(
      part="snippet",
      body={
            'snippet': {
              'playlistId': playlistID, 
              'resourceId': {
                      'kind': 'youtube#video',
                  'videoId': videoID
                }
            #'position': 0
            }
    }
     ).execute()

    if __name__ == '__main__':
     youtube = get_authenticated_service()
         add_video_to_playlist(youtube,"yszl2oxi8IY","PL2JW1S4IMwYubm06iDKfDsmWVB-J8funQ")

这篇关于使用 Python 将 youtube 视频添加到播放列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆