yt-unlist-saver/youtube_api.py

37 lines
1.1 KiB
Python

#!/usr/bin/env python3
# Python wrapper for REST API for some of the YouTube API.
from requests import get, post
import json
class YouTubeAPI(object):
def __init__(self, key):
self.url = 'https://www.googleapis.com/youtube/v3/'
self.key = key
# Sends get requests and turns requested data.
def getRequest(self, domain):
response = get('{}{}&key={}'.format(self.url,
domain,
self.key))
return json.loads(response.text)
def getVideo(self, part, id):
return self.getRequest('videos?part={}&id={}'.format(part, id))
def getVideoInfo(self, tag):
snippet = self.getVideo('snippet', tag)
status = self.getVideo('status', tag)
snippet = snippet['items'][0]['snippet']
status = status['items'][0]['status']
title = snippet['title']
date = snippet['publishedAt']
channel = snippet['channelTitle']
channelId = snippet['channelId']
description = snippet['description']
tags = snippet['tags']
privacy = status['privacyStatus']
return title, date, channel, channelId, description, tags, privacy