gpt4 book ai didi

python - 使用 Python 将 youtube 视频添加到播放列表

转载 作者:太空宇宙 更新时间:2023-11-03 12:48:32 28 4
gpt4 key购买 nike

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

现在我想将上传的视频添加到我的 youtube channel 的播放列表中。我没有在 Python 中找到用于 YouTube 数据 API 版本 3 的任何示例代码。

This question给我 answer但它适用于 Youtube Data API 的旧版本(版本 1)

我想 developers.google.com/youtube/v3/docs/playlistItems/insert 可以帮助我,但我不确定要在 youtube.playlistItem().insert( )

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

最佳答案

代码是:

    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 - 使用 Python 将 youtube 视频添加到播放列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21228815/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com