Friday, January 20, 2012

Create a YouTube playlist containing all the uploads of a given user

  1. var credentials = new GDataCredentials(userName, password);
  2. var service = new YouTubeService(applicationName, developerKey) {Credentials = credentials};
  3. var entry = new AtomEntry {Title = {Text = playlistName}};
  4. entry = service.Insert(new Uri(YouTubeQuery.CreatePlaylistsUri(null)), entry);
  5. var id = ((XmlExtension) entry.FindExtension("playlistId", YouTubeNameTable.NSYouTube)).Node.InnerText;
  6. var batchUri = new Uri(string.Format("https://gdata.youtube.com/feeds/api/playlists/{0}/batch", id));
  7. var query = new YouTubeQuery(YouTubeQuery.CreateUserUri(sourceUser)) {StartIndex = 1};
  8. AtomFeed feed;
  9. do
  10. {
  11. feed = service.Query(query);
  12. service.Batch(feed, batchUri);
  13. query.StartIndex += feed.Entries.Count;
  14. } while (query.StartIndex < feed.TotalResults);
Google Data API .NET client library

No comments: