I am helping a researcher wanting to list YouTube videos uploaded from a specific country/region that are a particular genre.
In particular, documentary videos uploaded by people from New Zealand. My expectation based on what I have found in Stack Overflow is that the region is more about access to the video rather than the region it was uploaded from but if someone knows a workaround that could return that list via the api that would be great.
Try Something like this:
http://gdata.youtube.com/feeds/api/videos?max-results=50&location=42.0000,174.0000&location-radius=1000km
This search searches for:
50 Videos
All from New Zealand
Within a 1000KM ratius of the center of it
And For videos over the first 50 just use=
http://gdata.youtube.com/feeds/api/videos?max-results=50&start-index=50&location=42.0000,174.0000&location-radius=1000km
And Change the "start-index" to be at increments of 50...
So 50, 100, 150, 200...
But Beware im preatty sure this only works if the author chooses to put a location on their video.
Related
I want to get channel IDs for all YouTube channels in Japan.
I tried to set the following parameters and call /search of YouTube Data API v3.
part: id
maxResults: 50
regionCode: jp
type: channel
pageInfo.totalResults in the API response is about 200,000 but actually I can only get 583 channel IDs.
583 is too little even if pageInfo.totalResults is an approximate value.
I would like to know how to get all the channel IDs in Japan, either by using the API or not.
I hope you will be able to provide the related information.
I tried to do almost the same for France. As said #stvar there isn't any appropriate endpoint to do so. However with patience and work we can make a kind of work around. My method only retrieves Japanese YouTube channels having indirectly publicly interacted with your starting set (see below).
Get a good starting set (in order to maximize the discover of the Japanese YouTube channels graph). I recommend you for instance to retrieve the top 100 Japanese YouTube channels sorted by view count by using SocialBlade.
For each channel discovered by the comments retrieved at step 3 (automatically) choose whether or not it is a Japanese YouTube channel. You can retrieve this piece of information if it is available for the channel in the "About" tab. To do it in an automatic way check whether or not snippet["country"] == "JP" in https://youtube.googleapis.com/youtube/v3/channels?part=snippet&id=CHANNEL_ID&key=YOUR_API_KEY If country isn't defined you can try to guess (automatically) whether or not it is a Japanese YouTube channel by making more complex checks see isFrench function. These checks are based on "About" tab and uploaded videos.
If the channel is interesting you (is Japanese) retrieve all comments (and so the YouTube channel about channel's videos and in the community tab using CommentThreads: list with part containing snippet and allThreadsRelatedToChannelId filter. If this method doesn't return any data because a video has disabled comments then retrieve the videos list and comments associated using (a) then CommentThreads: list with filter videoId. The approach (a) consists in getting the uploads auto-created playlist id of the YouTube channel by using Channels: list with contentDetails in part and then use PlaylistItems: list to retrieve all public videos uploaded on this YouTube channel. And if the YouTube channel contains more than 20 000 videos which is the upper limit for playlist size, use this script instead of (a). The script consists in faking requests done when browsing videos on a YouTube channel.
Then continue to dive into the Japanese YouTube channel graph by discovering Japanese YouTube channels through the comments found in your starting set and so on.
You can have a look for more details and some helping tools on my GitHub repository dedicated to the same approach for France (I was trying to list all comments let on French YouTube videos).
Of course you might need multithreading and group your YouTube Data API v3 request to reach maxResults upper limit in order to maximize your quota efficiency. Good luck.
Can i with youtube api explore videos without added search keyword e.g. popular videos per country,new videos,last comments videos or something like that where i can get videos without added search keyword ?
You can check out the Video Feeds developer guide to search for most popular videos and other feeds. You can also limit it to a certain user, country, etc.
In v3, you can use chart=mostPopular option of youtube.search.list.
https://developers.google.com/youtube/v3/guides/implementation/videos#videos-retrieve-most-popular-videos
If you want to get TOP 10 videos in Geographic areas, 7DayTotals, 30DayTotals, ..., you can use dimensions of YouTube Analytics API.
https://developers.google.com/youtube/analytics/v1/dimsmets/dims
I want to output last videos and popular videos of my youtube channel.
Is there any standart widget, api method for this?
Based on this answer, you can use the YouTube Data V3 API to get the uploads playlist ID, which you can then use to get the latest videos in that playlist. You can change the value of maxResults to return however many videos you want (from 0 to 50).
Use the search:list method to get your most viewed videos by specifying the channel ID and setting order=viewcount (not quite sure what you want when you say popular videos, you could also set order=rating to get the highest rated videos). This video might also help you out.
I am totally stuck in finding a solution to this.
I am trying to easily filter the data for Yooutube videos uploaded in given time period to check only their Views and other metrics. Currently if I check the views in the Youtube Analytics, there are all the videos uploaded only the views in given period are considered.
Can somebody help?
thanks
You could create a group of the videos you are looking for. On the top right of YTA, click on Groups -> Create video group.
A long time ago, I developed a chrome extension that is able to scrobble the songs you listen to on youtube (via your last.fm account). What I did was simply taking the title of the video and assuming it had the proper format: "Artist - Track name" (obviously, I would send a request to last.fm, confirming it was a proper artist/song pair, before scrobbling). Recently (well, probably a couple of months ago) youtube started to provide artist and song information directly under the video (see image), and I was wondering how best to extract this information.
I was hoping to retrieve the information via the youtube feed api call (http://gdata.youtube.com/feeds/api/videos/videoID?alt=json), but it doesn't apear to be featured in the returned json element. Alternatly, I could try extracting it via xpath, but I figure that might lead to complications when no artist/song information is present. If anybody could help me extract this information, and thereby greatly improving my extension, I would be very grateful.
I don't think YouTube API can provide you with the artist name
as the videos can be other things that songs
you need to stick with what you have , unless they updated there API