def initialize_upload(options, strFile, strTitle): youtube = get_authenticated_service() options.file = strFile options.title = strTitle options.description = strUploadDescription.get() tags = None if options.keywords: tags = options.keywords.split(",") print options.file insert_request = youtube.videos().insert( part="snippet,status", body=dict( snippet=dict( title=options.title, description=options.description, tags=tags, categoryId=options.category ), status=dict( privacyStatus=options.privacyStatus ) ), # chunksize=-1 means that the entire file will be uploaded in a single # HTTP request. (If the upload fails, it will still be retried where it # left off.) This is usually a best practice, but if you're using Python # older than 2.6 or if you're running on App Engine, you should set the # chunksize to something like 1024 * 1024 (1 megabyte). media_body=MediaFileUpload(options.file, chunksize=-1, resumable=True) ) resumable_upload(insert_request)
def viewsAndAdd(id): global d id = id searchUrl = "https://www.googleapis.com/youtube/v3/videos?id=" + id + "&key=" + DEVELOPER_KEY + "&part=statistics" entry = youtube.videos().list(id=id, part='statistics, snippet').execute() all_data = entry['items'] viewCount = all_data[0]['statistics']['viewCount'] d[id] = int(viewCount)
def get_stats(videoId): # parse_videos(videos) search_response = youtube.videos().list( part="statistics,snippet", id=videoId, fields = "items(statistics(viewCount), snippet(title,publishedAt))" ).execute() return search_response.get("items" , [])[0]
def youtube_search(options, TEXT): youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION, developerKey=DEVELOPER_KEY) search_response = youtube.search().list( q=TEXT, type="video", location=options.location, locationRadius=options.location_radius, part="id,snippet", maxResults=options.max_results).execute() search_videos = [] # Merge video ids for search_result in search_response.get("items", []): search_videos.append(search_result["id"]["videoId"]) video_ids = ",".join(search_videos) video_response = youtube.videos().list( id=video_ids, part='snippet, recordingDetails, statistics, contentDetails,id' ).execute() videos = [] # Add each result to the list, and then display the list of matching videos. for video_result in video_response.get("items", []): #videos.append("title: %s\n likes: %s\n location: (%s,%s)" % (video_result["snippet"]["title"],video_result["statistics"]["likeCount"],video_result["recordingDetails"]["location"]["latitude"],video_result["recordingDetails"]["location"]["longitude"])) print "title:" + video_result["snippet"]["title"] print "URL: " + "https://www.youtube.com/watch?v=" + video_result["id"] print "likes:" + video_result["statistics"]["likeCount"] print "dislikes:" + video_result["statistics"]["dislikeCount"] print "viewCount:" + video_result["statistics"]["viewCount"] print "favoriteCount: " + video_result["statistics"]["favoriteCount"] print "commentCount: " + video_result["statistics"]["commentCount"] print "location: ", video_result["recordingDetails"]["location"][ "latitude"], video_result["recordingDetails"]["location"][ "longitude"] print "duration: ", video_result["contentDetails"]["duration"] print
yt_service = gdata.youtube.service.YouTubeService() url = 'https://www.googleapis.com/youtube/v3/videos?part=statistics&id=gnPPgX1p5lc&key=AIzaSyBpJrEkp6QfLqy1ZPeLeCXLN_eIW_Ir7_w' key = 'AIzaSyBpJrEkp6QfLqy1ZPeLeCXLN_eIW_Ir7_w' SnipURL = 'https://www.googleapis.com/youtube/v3/videos?part=snippet&id=gnPPgX1p5lc&key=AIzaSyBpJrEkp6QfLqy1ZPeLeCXLN_eIW_Ir7_w' api_service_name = "youtube" api_version = "v3" #ViewCount data = urllib.request.urlopen(url).read() viewCount = str(json.loads(data)['items'][0]['statistics']['viewCount']) print(viewCount) #Title View data = urllib.request.urlopen(SnipURL).read() title = str(json.loads(data)['items'][0]['snippet']['title']) print(title) request = youtube.videos().update(part="id,snippet", body={ "id": "gnPPgX1p5lc", "snippet": { "title": "test", "categoryId": "23" } }) response = request.execute() print(response)