youtube_playlist
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)
youtube_playlist.1675016974.txt.gz · Last modified: by ssm2017
