User Tools

This is an old revision of the document!


# see : https://console.cloud.google.com/apis/credentials
import googleapiclient.discovery
import json

channel_id = "*******"
api_key = "****************"

youtube = googleapiclient.discovery.build("youtube", "v3", developerKey = "AIzaSyBRYFmzq1rlEwAp5P8VdpQmnJmZC5h9gRE")

def getItemsByKey(playlist_id):
    from googleapiclient.discovery import build

    api_service_name = "youtube"
    api_version = "v3"
    youtube = build(api_service_name, api_version, developerKey=api_key)
    request = youtube.playlistItems().list(
        part="snippet",
        playlistId=playlist_id
    )
    results = request.execute()
    entries = []
    for result in results['items']:
        entries.append({
            'title': result['snippet']['title'],
            'videoId': result['snippet']['resourceId']['videoId']
        })
    return entries

request = youtube.playlists().list(
    part = "snippet",
    channelId = channel_id,
    maxResults = 50
)
response = request.execute()
playlists_count = 0
playlists = []
while request is not None:
    response = request.execute()
    for item in response['items']:
        print("Playlist : ", item['snippet']['localized']['title'])
        playlist = {
            'id': item['id'],
            'title': item['snippet']['localized']['title'],
            'items': getItemsByKey(item['id'])
        }
        playlists.append(playlist)
        playlists_count += 1
    request = youtube.playlists().list_next(request, response)

with open("my_playlists.json", "w") as write_file:
    json.dump(playlists, write_file, indent=4)
print("Count : ", playlists_count)

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also, you acknowledge that you have read and understand our Privacy Policy. If you do not agree, please leave the website.

More information