video_info 2.1.1 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.txt +1 -1
  3. data/README.md +40 -14
  4. data/lib/video_info.rb +6 -1
  5. data/lib/video_info/providers/dailymotion.rb +85 -0
  6. data/lib/video_info/providers/youtube.rb +1 -1
  7. data/lib/video_info/providers/youtubeplaylist.rb +55 -0
  8. data/lib/video_info/version.rb +1 -1
  9. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_This_video_does_not_exist_or_has_been_deleted_/available_/.yml +63 -0
  10. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_valid_video/available_/.yml +60 -0
  11. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_is_unavailable_video/available_/.yml +46 -0
  12. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_no_longer_available_due_to_a_copyright_claim_video/available_/.yml +46 -0
  13. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/date/.yml +63 -0
  14. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/description/.yml +63 -0
  15. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/duration/.yml +63 -0
  16. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/keywords/.yml +63 -0
  17. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_large/.yml +63 -0
  18. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_medium/.yml +63 -0
  19. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_small/.yml +63 -0
  20. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/title/.yml +63 -0
  21. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/view_count/.yml +63 -0
  22. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/description/.yml +305 -305
  23. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/duration/.yml +1015 -1015
  24. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/embed_code/.yml +305 -305
  25. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/embed_url/.yml +305 -305
  26. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/height/.yml +1015 -1015
  27. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/keywords/.yml +1015 -1015
  28. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/view_count/.yml +1015 -1015
  29. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vkontakte/with_video_video39576223_108370515/width/.yml +1015 -1015
  30. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_invalid_playlist/available_/.yml +46 -0
  31. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_valid_playlist/available_/.yml +56 -0
  32. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/.yml +98 -0
  33. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/date/.yml +98 -0
  34. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/description/.yml +98 -0
  35. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/duration/.yml +98 -0
  36. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/keywords/.yml +98 -0
  37. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_large/.yml +96 -0
  38. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_medium/.yml +96 -0
  39. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_small/.yml +98 -0
  40. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/title/.yml +98 -0
  41. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/videos/.yml +96 -0
  42. data/spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/view_count/.yml +98 -0
  43. data/spec/lib/video_info/providers/dailymotion_spec.rb +78 -0
  44. data/spec/lib/video_info/providers/youtube_playlist_spec.rb +66 -0
  45. data/spec/lib/video_info/providers/youtube_spec.rb +5 -0
  46. data/spec/lib/video_info_spec.rb +20 -0
  47. data/video_info.gemspec +4 -4
  48. metadata +64 -6
@@ -0,0 +1,96 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=json&v=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - VideoInfo/2.1.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ X-Gdata-User-Country:
22
+ - GB
23
+ Content-Type:
24
+ - application/json;charset=UTF-8
25
+ Expires:
26
+ - Fri, 21 Feb 2014 12:16:08 GMT
27
+ Date:
28
+ - Fri, 21 Feb 2014 12:11:08 GMT
29
+ Cache-Control:
30
+ - public, max-age=300, no-transform
31
+ Vary:
32
+ - Accept, X-GData-Authorization, GData-Version
33
+ Gdata-Version:
34
+ - '2.1'
35
+ Etag:
36
+ - W/"D0cDSX47eCp7I2A9Wh9SGUg."
37
+ Last-Modified:
38
+ - Sun, 09 Feb 2014 14:11:18 GMT
39
+ X-Content-Type-Options:
40
+ - nosniff
41
+ X-Frame-Options:
42
+ - SAMEORIGIN
43
+ X-Xss-Protection:
44
+ - 1; mode=block
45
+ Content-Length:
46
+ - '25710'
47
+ Server:
48
+ - GSE
49
+ Alternate-Protocol:
50
+ - 80:quic
51
+ body:
52
+ encoding: UTF-8
53
+ string: "{\"version\":\"1.0\",\"encoding\":\"UTF-8\",\"feed\":{\"xmlns\":\"http://www.w3.org/2005/Atom\",\"xmlns$media\":\"http://search.yahoo.com/mrss/\",\"xmlns$openSearch\":\"http://a9.com/-/spec/opensearch/1.1/\",\"xmlns$gd\":\"http://schemas.google.com/g/2005\",\"xmlns$yt\":\"http://gdata.youtube.com/schemas/2007\",\"gd$etag\":\"W/\\\"D0cDSX47eCp7I2A9Wh9SGUg.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},\"updated\":{\"$t\":\"2014-02-09T14:11:18.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#playlist\"}],\"title\":{\"$t\":\"YouTube
54
+ Policy and Copyright\"},\"subtitle\":{\"$t\":\"Learn more about copyright
55
+ basics, flagging, and the YouTube community.\"},\"logo\":{\"$t\":\"http://www.gstatic.com/youtube/img/logo.png\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/playlist?list=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},{\"rel\":\"http://schemas.google.com/g/2005#feed\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?v=2\"},{\"rel\":\"http://schemas.google.com/g/2005#batch\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/batch?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=json&start-index=1&max-results=25&v=2\"},{\"rel\":\"service\",\"type\":\"application/atomsvc+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=atom-service&v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
56
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"generator\":{\"$t\":\"YouTube
57
+ data API\",\"version\":\"2.1\",\"uri\":\"http://gdata.youtube.com\"},\"openSearch$totalResults\":{\"$t\":5},\"openSearch$startIndex\":{\"$t\":1},\"openSearch$itemsPerPage\":{\"$t\":25},\"media$group\":{\"media$content\":[{\"url\":\"http://www.youtube.com/p/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\",\"type\":\"application/x-shockwave-flash\",\"yt$format\":5}],\"media$description\":{\"$t\":\"Learn
58
+ more about copyright basics, flagging, and the YouTube community.\",\"type\":\"plain\"},\"media$thumbnail\":[{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/default.jpg\",\"height\":90,\"width\":120,\"yt$name\":\"default\"},{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"}],\"media$title\":{\"$t\":\"YouTube
59
+ Policy and Copyright\",\"type\":\"plain\"}},\"yt$playlistId\":{\"$t\":\"PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},\"entry\":[{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxvzeL5__87gFCq75gAaFE6gY\"},\"published\":{\"$t\":\"2013-09-13T16:49:50.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Howto\",\"label\":\"Howto
60
+ & Style\"}],\"title\":{\"$t\":\"Buying YouTube views through third-party services\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/_Bt3-WsHfB0?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=_Bt3-WsHfB0&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/_Bt3-WsHfB0/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=_Bt3-WsHfB0\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/_Bt3-WsHfB0?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxvzeL5__87gFCq75gAaFE6gY?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
61
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Howto\",\"label\":\"Howto
62
+ & Style\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/_Bt3-WsHfB0?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":62,\"yt$format\":5},{\"url\":\"rtsp://r6---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAkdfAdr-Xcb_BMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":62,\"yt$format\":1},{\"url\":\"rtsp://r6---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAkdfAdr-Xcb_BMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":62,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
63
+ Help\"}],\"media$description\":{\"$t\":\"Viewcounts serve as a way to recognize
64
+ and surface great content. Since views are so important, it's no surprise
65
+ that an ecosystem of businesses has evolved around artificially helping creators
66
+ get and create YouTube views, likes, and subscribers.\\n\\nHowever, paying
67
+ for views obtained through some of these companies could be a violation of
68
+ our terms, which exist, in part, to make sure the views on any YouTube video
69
+ come from real, genuine people.\\n\\nPlease visit our Help Center article
70
+ for more info!\\n\\nhttps://support.google.com/youtube/answer/3399767\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=_Bt3-WsHfB0&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:31\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:15.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:31\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:46.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Buying
71
+ YouTube views through third-party services\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"62\"},\"yt$uploaded\":{\"$t\":\"2013-09-13T16:48:55.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"_Bt3-WsHfB0\"}},\"yt$position\":{\"$t\":1}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv5JvZLgV8BItvSbpyhS9_p8\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Education\",\"label\":\"Education\"}],\"title\":{\"$t\":\"YouTube
72
+ Content ID\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/9g2U12SsRns?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=9g2U12SsRns&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/9g2U12SsRns/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=9g2U12SsRns\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/9g2U12SsRns?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv5JvZLgV8BItvSbpyhS9_p8?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
73
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"media$group\":{\"media$category\":[{\"$t\":\"Education\",\"label\":\"Education\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/9g2U12SsRns?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":132,\"yt$format\":5},{\"url\":\"rtsp://r7---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAl7Rqxk15QN9hMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":132,\"yt$format\":1},{\"url\":\"rtsp://r7---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAl7Rqxk15QN9hMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":132,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
74
+ Help\"}],\"media$description\":{\"$t\":\"Learn more about YouTube's Content
75
+ ID system.\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=9g2U12SsRns&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:06\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:33\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:06\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:39\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"YouTube
76
+ Content ID\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"132\"},\"yt$uploaded\":{\"$t\":\"2010-09-28T18:21:56.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"9g2U12SsRns\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"599520\"},\"yt$position\":{\"$t\":2}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv5thSi6AaU9r_9hUpT_DLZE\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Education\",\"label\":\"Education\"}],\"title\":{\"$t\":\"Determining
77
+ What Happened to Your Video\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/8b0aEoxqqC0?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=8b0aEoxqqC0&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/8b0aEoxqqC0/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=8b0aEoxqqC0\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/8b0aEoxqqC0?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv5thSi6AaU9r_9hUpT_DLZE?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
78
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Education\",\"label\":\"Education\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/8b0aEoxqqC0?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":191,\"yt$format\":5},{\"url\":\"rtsp://r2---sn-p5qlsu7e.c.youtube.com/CiULENy73wIaHAktqGqMEhq98RMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":191,\"yt$format\":1},{\"url\":\"rtsp://r2---sn-p5qlsu7e.c.youtube.com/CiULENy73wIaHAktqGqMEhq98RMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":191,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
79
+ Help\"}],\"media$description\":{\"$t\":\"This video will show you how to determine
80
+ what happened to your video if it was removed from YouTube.\\n\\nTo learn
81
+ more about copyright on YouTube, please visit our Copyright Center at http://www.youtube.com/yt/copyright/\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"cc\",\"type\":\"text/html\",\"href\":\"http://creativecommons.org/licenses/by/3.0/\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=8b0aEoxqqC0&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:35.500\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47.750\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:35.500\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:23.250\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Determining
82
+ What Happened to Your Video\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"191\"},\"yt$uploaded\":{\"$t\":\"2013-04-11T23:44:36.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"8b0aEoxqqC0\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"19159\"},\"yt$position\":{\"$t\":3}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv4Zz231WHvzzM2lBS3jjPZs\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Entertainment\",\"label\":\"Entertainment\"}],\"title\":{\"$t\":\"Reporting
83
+ and Policy Enforcement on YouTube\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/6c3mHikRz0I?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=6c3mHikRz0I&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=6c3mHikRz0I\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv4Zz231WHvzzM2lBS3jjPZs?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
84
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"allowed\"},{\"action\":\"commentVote\",\"permission\":\"allowed\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"allowed\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"gd$comments\":{\"gd$feedLink\":{\"rel\":\"http://gdata.youtube.com/schemas/2007#comments\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I/comments?v=2\",\"countHint\":126}},\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Entertainment\",\"label\":\"Entertainment\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/6c3mHikRz0I?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":94,\"yt$format\":5},{\"url\":\"rtsp://r1---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAlCzxEpHubN6RMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":94,\"yt$format\":1},{\"url\":\"rtsp://r1---sn-p5qlsu7s.c.youtube.com/CiULENy73wIaHAlCzxEpHubN6RMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":94,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
85
+ Help\"}],\"media$description\":{\"$t\":\"This video explains the basics of
86
+ reporting on YouTube. \\n\\nTo learn more about reporting, policies and safety
87
+ please visit our Policy and Safety hub, http://www.youtube.com/yt/policyandsafety/\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=6c3mHikRz0I&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:23.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:10.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Reporting
88
+ and Policy Enforcement on YouTube\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"94\"},\"yt$uploaded\":{\"$t\":\"2013-04-04T23:31:32.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"6c3mHikRz0I\"}},\"gd$rating\":{\"average\":3.3589745,\"max\":5,\"min\":1,\"numRaters\":507,\"rel\":\"http://schemas.google.com/g/2005#overall\"},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"183044\"},\"yt$rating\":{\"numDislikes\":\"208\",\"numLikes\":\"299\"},\"yt$position\":{\"$t\":4}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv1hmeWhxMppADNQi_wSyGm4\"},\"published\":{\"$t\":\"2013-12-17T23:45:41.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Howto\",\"label\":\"Howto
89
+ & Style\"}],\"title\":{\"$t\":\"YouTube Copyright Basics (Global)\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/OQVHWsTHcoc?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=OQVHWsTHcoc&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/OQVHWsTHcoc/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=OQVHWsTHcoc\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/OQVHWsTHcoc?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv1hmeWhxMppADNQi_wSyGm4?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
90
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Howto\",\"label\":\"Howto
91
+ & Style\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/OQVHWsTHcoc?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":342,\"yt$format\":5},{\"url\":\"rtsp://r7---sn-p5qlsu76.c.youtube.com/CiULENy73wIaHAmHcsfEWkcFORMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":342,\"yt$format\":1},{\"url\":\"rtsp://r7---sn-p5qlsu76.c.youtube.com/CiULENy73wIaHAmHcsfEWkcFORMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":342,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
92
+ Help\"}],\"media$description\":{\"$t\":\"\",\"type\":\"plain\"},\"media$keywords\":{\"$t\":\"yt:cc=on\"},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=OQVHWsTHcoc&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:51\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:25.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:51\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:04:16.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"YouTube
93
+ Copyright Basics (Global)\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"342\"},\"yt$uploaded\":{\"$t\":\"2013-12-02T23:22:20.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"OQVHWsTHcoc\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"210978\"},\"yt$position\":{\"$t\":5}}]}}"
94
+ http_version:
95
+ recorded_at: Fri, 21 Feb 2014 12:12:23 GMT
96
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,98 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=json&v=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - VideoInfo/2.1.1
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ X-Gdata-User-Country:
22
+ - GB
23
+ Content-Type:
24
+ - application/json; charset=UTF-8
25
+ Access-Control-Allow-Origin:
26
+ - "*"
27
+ Expires:
28
+ - Fri, 21 Feb 2014 13:35:40 GMT
29
+ Date:
30
+ - Fri, 21 Feb 2014 13:30:40 GMT
31
+ Cache-Control:
32
+ - public, max-age=300, no-transform
33
+ Vary:
34
+ - Accept, X-GData-Authorization, GData-Version
35
+ Gdata-Version:
36
+ - '2.1'
37
+ Etag:
38
+ - W/"D0cDSX47eCp7I2A9Wh9SGUg."
39
+ Last-Modified:
40
+ - Sun, 09 Feb 2014 14:11:18 GMT
41
+ Transfer-Encoding:
42
+ - chunked
43
+ X-Content-Type-Options:
44
+ - nosniff
45
+ X-Frame-Options:
46
+ - SAMEORIGIN
47
+ X-Xss-Protection:
48
+ - 1; mode=block
49
+ Server:
50
+ - GSE
51
+ Alternate-Protocol:
52
+ - 80:quic
53
+ body:
54
+ encoding: UTF-8
55
+ string: "{\"version\":\"1.0\",\"encoding\":\"UTF-8\",\"feed\":{\"xmlns\":\"http://www.w3.org/2005/Atom\",\"xmlns$media\":\"http://search.yahoo.com/mrss/\",\"xmlns$openSearch\":\"http://a9.com/-/spec/opensearch/1.1/\",\"xmlns$gd\":\"http://schemas.google.com/g/2005\",\"xmlns$yt\":\"http://gdata.youtube.com/schemas/2007\",\"gd$etag\":\"W/\\\"D0cDSX47eCp7I2A9Wh9SGUg.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},\"updated\":{\"$t\":\"2014-02-09T14:11:18.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#playlist\"}],\"title\":{\"$t\":\"YouTube
56
+ Policy and Copyright\"},\"subtitle\":{\"$t\":\"Learn more about copyright
57
+ basics, flagging, and the YouTube community.\"},\"logo\":{\"$t\":\"http://www.gstatic.com/youtube/img/logo.png\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/playlist?list=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},{\"rel\":\"http://schemas.google.com/g/2005#feed\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?v=2\"},{\"rel\":\"http://schemas.google.com/g/2005#batch\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/batch?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=json&start-index=1&max-results=25&v=2\"},{\"rel\":\"service\",\"type\":\"application/atomsvc+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr?alt=atom-service&v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
58
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"generator\":{\"$t\":\"YouTube
59
+ data API\",\"version\":\"2.1\",\"uri\":\"http://gdata.youtube.com\"},\"openSearch$totalResults\":{\"$t\":5},\"openSearch$startIndex\":{\"$t\":1},\"openSearch$itemsPerPage\":{\"$t\":25},\"media$group\":{\"media$content\":[{\"url\":\"http://www.youtube.com/p/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\",\"type\":\"application/x-shockwave-flash\",\"yt$format\":5}],\"media$description\":{\"$t\":\"Learn
60
+ more about copyright basics, flagging, and the YouTube community.\",\"type\":\"plain\"},\"media$thumbnail\":[{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/default.jpg\",\"height\":90,\"width\":120,\"yt$name\":\"default\"},{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i.ytimg.com/vi/8b0aEoxqqC0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"}],\"media$title\":{\"$t\":\"YouTube
61
+ Policy and Copyright\",\"type\":\"plain\"}},\"yt$playlistId\":{\"$t\":\"PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr\"},\"entry\":[{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxvzeL5__87gFCq75gAaFE6gY\"},\"published\":{\"$t\":\"2013-09-13T16:49:50.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Howto\",\"label\":\"Howto
62
+ & Style\"}],\"title\":{\"$t\":\"Buying YouTube views through third-party services\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/_Bt3-WsHfB0?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=_Bt3-WsHfB0&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/_Bt3-WsHfB0/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=_Bt3-WsHfB0\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/_Bt3-WsHfB0?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxvzeL5__87gFCq75gAaFE6gY?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
63
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Howto\",\"label\":\"Howto
64
+ & Style\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/_Bt3-WsHfB0?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":62,\"yt$format\":5},{\"url\":\"rtsp://r6---sn-cg07lues.c.youtube.com/CiULENy73wIaHAkdfAdr-Xcb_BMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":62,\"yt$format\":1},{\"url\":\"rtsp://r6---sn-cg07lues.c.youtube.com/CiULENy73wIaHAkdfAdr-Xcb_BMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":62,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
65
+ Help\"}],\"media$description\":{\"$t\":\"Viewcounts serve as a way to recognize
66
+ and surface great content. Since views are so important, it's no surprise
67
+ that an ecosystem of businesses has evolved around artificially helping creators
68
+ get and create YouTube views, likes, and subscribers.\\n\\nHowever, paying
69
+ for views obtained through some of these companies could be a violation of
70
+ our terms, which exist, in part, to make sure the views on any YouTube video
71
+ come from real, genuine people.\\n\\nPlease visit our Help Center article
72
+ for more info!\\n\\nhttps://support.google.com/youtube/answer/3399767\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=_Bt3-WsHfB0&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:31\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:15.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:31\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/_Bt3-WsHfB0/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:46.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Buying
73
+ YouTube views through third-party services\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"62\"},\"yt$uploaded\":{\"$t\":\"2013-09-13T16:48:55.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"_Bt3-WsHfB0\"}},\"yt$position\":{\"$t\":1}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv5JvZLgV8BItvSbpyhS9_p8\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Education\",\"label\":\"Education\"}],\"title\":{\"$t\":\"YouTube
74
+ Content ID\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/9g2U12SsRns?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=9g2U12SsRns&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/9g2U12SsRns/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=9g2U12SsRns\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/9g2U12SsRns?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv5JvZLgV8BItvSbpyhS9_p8?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
75
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"media$group\":{\"media$category\":[{\"$t\":\"Education\",\"label\":\"Education\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/9g2U12SsRns?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":132,\"yt$format\":5},{\"url\":\"rtsp://r7---sn-cg07lues.c.youtube.com/CiULENy73wIaHAl7Rqxk15QN9hMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":132,\"yt$format\":1},{\"url\":\"rtsp://r7---sn-cg07lues.c.youtube.com/CiULENy73wIaHAl7Rqxk15QN9hMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":132,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
76
+ Help\"}],\"media$description\":{\"$t\":\"Learn more about YouTube's Content
77
+ ID system.\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=9g2U12SsRns&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:06\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:33\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:06\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/9g2U12SsRns/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:39\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"YouTube
78
+ Content ID\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"132\"},\"yt$uploaded\":{\"$t\":\"2010-09-28T18:21:56.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"9g2U12SsRns\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"599551\"},\"yt$position\":{\"$t\":2}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv5thSi6AaU9r_9hUpT_DLZE\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Education\",\"label\":\"Education\"}],\"title\":{\"$t\":\"Determining
79
+ What Happened to Your Video\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/8b0aEoxqqC0?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=8b0aEoxqqC0&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/8b0aEoxqqC0/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=8b0aEoxqqC0\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/8b0aEoxqqC0?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv5thSi6AaU9r_9hUpT_DLZE?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
80
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Education\",\"label\":\"Education\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/8b0aEoxqqC0?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":191,\"yt$format\":5},{\"url\":\"rtsp://r2---sn-cg07luee.c.youtube.com/CiULENy73wIaHAktqGqMEhq98RMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":191,\"yt$format\":1},{\"url\":\"rtsp://r2---sn-cg07luee.c.youtube.com/CiULENy73wIaHAktqGqMEhq98RMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":191,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
81
+ Help\"}],\"media$description\":{\"$t\":\"This video will show you how to determine
82
+ what happened to your video if it was removed from YouTube.\\n\\nTo learn
83
+ more about copyright on YouTube, please visit our Copyright Center at http://www.youtube.com/yt/copyright/\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"cc\",\"type\":\"text/html\",\"href\":\"http://creativecommons.org/licenses/by/3.0/\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=8b0aEoxqqC0&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:35.500\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47.750\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:35.500\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/8b0aEoxqqC0/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:23.250\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Determining
84
+ What Happened to Your Video\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"191\"},\"yt$uploaded\":{\"$t\":\"2013-04-11T23:44:36.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"8b0aEoxqqC0\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"19161\"},\"yt$position\":{\"$t\":3}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv4Zz231WHvzzM2lBS3jjPZs\"},\"published\":{\"$t\":\"2013-08-09T05:09:51.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Entertainment\",\"label\":\"Entertainment\"}],\"title\":{\"$t\":\"Reporting
85
+ and Policy Enforcement on YouTube\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/6c3mHikRz0I?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=6c3mHikRz0I&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=6c3mHikRz0I\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv4Zz231WHvzzM2lBS3jjPZs?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
86
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"allowed\"},{\"action\":\"commentVote\",\"permission\":\"allowed\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"allowed\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"gd$comments\":{\"gd$feedLink\":{\"rel\":\"http://gdata.youtube.com/schemas/2007#comments\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/6c3mHikRz0I/comments?v=2\",\"countHint\":126}},\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Entertainment\",\"label\":\"Entertainment\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/6c3mHikRz0I?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":94,\"yt$format\":5},{\"url\":\"rtsp://r1---sn-cg07lues.c.youtube.com/CiULENy73wIaHAlCzxEpHubN6RMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":94,\"yt$format\":1},{\"url\":\"rtsp://r1---sn-cg07lues.c.youtube.com/CiULENy73wIaHAlCzxEpHubN6RMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":94,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
87
+ Help\"}],\"media$description\":{\"$t\":\"This video explains the basics of
88
+ reporting on YouTube. \\n\\nTo learn more about reporting, policies and safety
89
+ please visit our Policy and Safety hub, http://www.youtube.com/yt/policyandsafety/\",\"type\":\"plain\"},\"media$keywords\":{},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=6c3mHikRz0I&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:23.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:00:47\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/6c3mHikRz0I/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:10.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"Reporting
90
+ and Policy Enforcement on YouTube\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"94\"},\"yt$uploaded\":{\"$t\":\"2013-04-04T23:31:32.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"6c3mHikRz0I\"}},\"gd$rating\":{\"average\":3.3589745,\"max\":5,\"min\":1,\"numRaters\":507,\"rel\":\"http://schemas.google.com/g/2005#overall\"},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"183084\"},\"yt$rating\":{\"numDislikes\":\"208\",\"numLikes\":\"299\"},\"yt$position\":{\"$t\":4}},{\"gd$etag\":\"W/\\\"YDwqeyM.\\\"\",\"id\":{\"$t\":\"tag:youtube.com,2008:playlist:PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr:PLa0L99Uc4VSCXhwLjoLzxv1hmeWhxMppADNQi_wSyGm4\"},\"published\":{\"$t\":\"2013-12-17T23:45:41.000Z\"},\"updated\":{\"$t\":\"1970-01-01T00:00:00.000Z\"},\"category\":[{\"scheme\":\"http://schemas.google.com/g/2005#kind\",\"term\":\"http://gdata.youtube.com/schemas/2007#video\"},{\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\",\"term\":\"Howto\",\"label\":\"Howto
91
+ & Style\"}],\"title\":{\"$t\":\"YouTube Copyright Basics (Global)\"},\"content\":{\"type\":\"application/x-shockwave-flash\",\"src\":\"http://www.youtube.com/v/OQVHWsTHcoc?version=3&f=playlists&app=youtube_gdata\"},\"link\":[{\"rel\":\"alternate\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/watch?v=OQVHWsTHcoc&feature=youtube_gdata\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#video.related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/OQVHWsTHcoc/related?v=2\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#mobile\",\"type\":\"text/html\",\"href\":\"http://m.youtube.com/details?v=OQVHWsTHcoc\"},{\"rel\":\"http://gdata.youtube.com/schemas/2007#uploader\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/users/MDQxm7cUx3yXkfeHa5zJIQ?v=2\"},{\"rel\":\"related\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/videos/OQVHWsTHcoc?v=2\"},{\"rel\":\"self\",\"type\":\"application/atom+xml\",\"href\":\"http://gdata.youtube.com/feeds/api/playlists/PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr/PLa0L99Uc4VSCXhwLjoLzxv1hmeWhxMppADNQi_wSyGm4?v=2\"}],\"author\":[{\"name\":{\"$t\":\"YouTube
92
+ Help\"},\"uri\":{\"$t\":\"http://gdata.youtube.com/feeds/api/users/YouTubeHelp\"},\"yt$userId\":{\"$t\":\"MDQxm7cUx3yXkfeHa5zJIQ\"}}],\"yt$accessControl\":[{\"action\":\"comment\",\"permission\":\"denied\"},{\"action\":\"commentVote\",\"permission\":\"denied\"},{\"action\":\"videoRespond\",\"permission\":\"moderated\"},{\"action\":\"rate\",\"permission\":\"denied\"},{\"action\":\"embed\",\"permission\":\"allowed\"},{\"action\":\"list\",\"permission\":\"allowed\"},{\"action\":\"autoPlay\",\"permission\":\"allowed\"},{\"action\":\"syndicate\",\"permission\":\"allowed\"}],\"yt$hd\":{},\"media$group\":{\"media$category\":[{\"$t\":\"Howto\",\"label\":\"Howto
93
+ & Style\",\"scheme\":\"http://gdata.youtube.com/schemas/2007/categories.cat\"}],\"media$content\":[{\"url\":\"http://www.youtube.com/v/OQVHWsTHcoc?version=3&f=playlists&app=youtube_gdata\",\"type\":\"application/x-shockwave-flash\",\"medium\":\"video\",\"isDefault\":\"true\",\"expression\":\"full\",\"duration\":342,\"yt$format\":5},{\"url\":\"rtsp://r7---sn-cg07luel.c.youtube.com/CiULENy73wIaHAmHcsfEWkcFORMYDSANFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":342,\"yt$format\":1},{\"url\":\"rtsp://r7---sn-cg07luel.c.youtube.com/CiULENy73wIaHAmHcsfEWkcFORMYESARFEgGUglwbGF5bGlzdHMM/0/0/0/video.3gp\",\"type\":\"video/3gpp\",\"medium\":\"video\",\"expression\":\"full\",\"duration\":342,\"yt$format\":6}],\"media$credit\":[{\"$t\":\"youtubehelp\",\"role\":\"uploader\",\"scheme\":\"urn:youtube\",\"yt$display\":\"YouTube
94
+ Help\"}],\"media$description\":{\"$t\":\"\",\"type\":\"plain\"},\"media$keywords\":{\"$t\":\"yt:cc=on\"},\"media$license\":{\"$t\":\"youtube\",\"type\":\"text/html\",\"href\":\"http://www.youtube.com/t/terms\"},\"media$player\":{\"url\":\"http://www.youtube.com/watch?v=OQVHWsTHcoc&feature=youtube_gdata_player\"},\"media$thumbnail\":[{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/default.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:51\",\"yt$name\":\"default\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/mqdefault.jpg\",\"height\":180,\"width\":320,\"yt$name\":\"mqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/hqdefault.jpg\",\"height\":360,\"width\":480,\"yt$name\":\"hqdefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/sddefault.jpg\",\"height\":480,\"width\":640,\"yt$name\":\"sddefault\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/1.jpg\",\"height\":90,\"width\":120,\"time\":\"00:01:25.500\",\"yt$name\":\"start\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/2.jpg\",\"height\":90,\"width\":120,\"time\":\"00:02:51\",\"yt$name\":\"middle\"},{\"url\":\"http://i1.ytimg.com/vi/OQVHWsTHcoc/3.jpg\",\"height\":90,\"width\":120,\"time\":\"00:04:16.500\",\"yt$name\":\"end\"}],\"media$title\":{\"$t\":\"YouTube
95
+ Copyright Basics (Global)\",\"type\":\"plain\"},\"yt$aspectRatio\":{\"$t\":\"widescreen\"},\"yt$duration\":{\"seconds\":\"342\"},\"yt$uploaded\":{\"$t\":\"2013-12-02T23:22:20.000Z\"},\"yt$uploaderId\":{\"$t\":\"UCMDQxm7cUx3yXkfeHa5zJIQ\"},\"yt$videoid\":{\"$t\":\"OQVHWsTHcoc\"}},\"yt$statistics\":{\"favoriteCount\":\"0\",\"viewCount\":\"211038\"},\"yt$position\":{\"$t\":5}}]}}"
96
+ http_version:
97
+ recorded_at: Fri, 21 Feb 2014 13:30:39 GMT
98
+ recorded_with: VCR 2.8.0
@@ -0,0 +1,78 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+
4
+ describe VideoInfo::Providers::Dailymotion do
5
+
6
+ describe ".usable?" do
7
+ subject { VideoInfo::Providers::Dailymotion.usable?(url) }
8
+
9
+ context "with dailymotion url" do
10
+ let(:url) { 'http://www.dailymotion.com/video/x7lni3' }
11
+ it { should be_true }
12
+ end
13
+
14
+ context "with dai.ly url" do
15
+ let(:url) { 'http://dai.ly/video/x7lni3' }
16
+ it { should be_true }
17
+ end
18
+
19
+ context "with other url" do
20
+ let(:url) { 'http://www.youtube.com/x7lni3' }
21
+ it { should be_false }
22
+ end
23
+ end
24
+
25
+ describe "#available?" do
26
+ context "with valid video", :vcr do
27
+ subject { VideoInfo.new('http://www.dailymotion.com/video/x7lni3') }
28
+ its(:available?) { should be_true }
29
+ end
30
+
31
+ context "with 'This video does not exist or has been deleted.", :vcr do
32
+ subject { VideoInfo.new('http://www.dailymotion.com/video/inValIdiD') }
33
+ its(:available?) { should be_false }
34
+ end
35
+ end
36
+
37
+ context "with video x7lni3", :vcr do
38
+ subject { VideoInfo.new('http://www.dailymotion.com/video/x7lni3') }
39
+
40
+ its(:provider) { should eq 'Dailymotion' }
41
+ its(:video_id) { should eq 'x7lni3' }
42
+ its(:url) { should eq 'http://www.dailymotion.com/video/x7lni3' }
43
+ its(:embed_url) { should eq 'www.dailymotion.com/embed/video/x7lni3' }
44
+ its(:embed_code) { should eq '<iframe src="http://www.dailymotion.com/embed/video/x7lni3?autoplay=0" frameborder="0"></iframe>' }
45
+ its(:title) { should eq 'Mario Kart (Rémi Gaillard)' }
46
+ its(:description) { should eq 'Super Rémi Kart est un jeu vidéo de course développé et édité par N\'Importe Quoi TV. Sa principale originalité vient de sa réalité...<br />L\'aventure continue sur www.nimportequi.com' }
47
+ its(:keywords) { should eq ["rémi","remi","gaillard","imposteur","imposture","mario","bros","kart","nintendo","jeux"] }
48
+ its(:duration) { should eq 136}
49
+ its(:width) { should be_nil }
50
+ its(:height) { should be_nil }
51
+ its(:date) { should eq Time.parse('2008-12-03 16:29:31 UTC', Time.now.utc) }
52
+ its(:thumbnail_small) { should eq 'http://s2.dmcdn.net/BgWxI/x60-kbf.jpg' }
53
+ its(:thumbnail_medium) { should eq 'http://s2.dmcdn.net/BgWxI/x240-b83.jpg' }
54
+ its(:thumbnail_large) { should eq 'http://s2.dmcdn.net/BgWxI/x720-YcV.jpg' }
55
+ its(:view_count) { should be > 10000000 }
56
+ end
57
+
58
+ context "with video x7lni3 and url_attributes", :vcr do
59
+ subject { VideoInfo.new('http://www.dailymotion.com/video/x7lni3') }
60
+
61
+ it { expect(subject.embed_code(url_attributes: { autoplay: 1 })).to match(/autoplay=1/) }
62
+ end
63
+
64
+ context "with video x7lni3 and iframe_attributes", :vcr do
65
+ subject { VideoInfo.new('http://www.dailymotion.com/video/x7lni3') }
66
+
67
+ it { expect(subject.embed_code(iframe_attributes: { width: 800, height: 600 })).to match(/width="800"/) }
68
+ it { expect(subject.embed_code(iframe_attributes: { width: 800, height: 600 })).to match(/height="600"/) }
69
+ end
70
+
71
+ context "with video x7lni3 in text", :vcr do
72
+ subject { VideoInfo.new('<a href="http://www.dailymotion.com/video/x7lni3">http://www.dailymotion.com/video/x7lni3</a>') }
73
+
74
+ its(:provider) { should eq 'Dailymotion' }
75
+ its(:video_id) { should eq 'x7lni3' }
76
+ end
77
+
78
+ end
@@ -0,0 +1,66 @@
1
+ require 'spec_helper'
2
+
3
+ describe VideoInfo::Providers::YoutubePlaylist do
4
+
5
+ describe ".usable?" do
6
+ subject { VideoInfo::Providers::YoutubePlaylist.usable?(url) }
7
+
8
+ context "with youtube.com/playlist url" do
9
+ let(:url) { 'http://www.youtube.com/playlist?p=PLA575C81A1FBC04CF' }
10
+ it { should be_true }
11
+ end
12
+
13
+ context "with youtube.com url" do
14
+ let(:url) { 'http://www.youtube.com/watch?v=Xp6CXF' }
15
+ it { should be_false }
16
+ end
17
+
18
+ context "with other url" do
19
+ let(:url) { 'http://example.com/video1' }
20
+ it { should be_false }
21
+ end
22
+ end
23
+
24
+ describe "#available?" do
25
+ context "with valid playlist", :vcr do
26
+ subject { VideoInfo.new('http://www.youtube.com/playlist?p=PLA575C81A1FBC04CF') }
27
+ its(:available?) { should be_true }
28
+ end
29
+
30
+ context "with invalid playlist", :vcr do
31
+ subject { VideoInfo.new('http://www.youtube.com/playlist?p=PLA575C81A1FBC04CF_invalid') }
32
+ its(:available?) { should be_false }
33
+ end
34
+ end
35
+
36
+ context "with playlist PL9hW1uS6HUftLdHI6RIsaf", :vcr do
37
+ let(:videos) {
38
+ [
39
+ VideoInfo.new('http://www.youtube.com/watch?v=_Bt3-WsHfB0'),
40
+ VideoInfo.new('http://www.youtube.com/watch?v=9g2U12SsRns'),
41
+ VideoInfo.new('http://www.youtube.com/watch?v=8b0aEoxqqC0'),
42
+ VideoInfo.new('http://www.youtube.com/watch?v=6c3mHikRz0I'),
43
+ VideoInfo.new('http://www.youtube.com/watch?v=OQVHWsTHcoc')
44
+ ]
45
+ }
46
+ subject { VideoInfo.new('http://www.youtube.com/playlist?p=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr') }
47
+
48
+ its(:provider) { should eq 'YouTube' }
49
+ its(:playlist_id) { should eq 'PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr' }
50
+ its(:url) { should eq 'http://www.youtube.com/playlist?p=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr' }
51
+ its(:embed_url) { should eq 'www.youtube.com/embed/videoseries?list=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr' }
52
+ its(:embed_code) { should eq '<iframe src="http://www.youtube.com/embed/videoseries?list=PL9hW1uS6HUftLdHI6RIsaf-iXTm09qnEr" frameborder="0" allowfullscreen="allowfullscreen"></iframe>' }
53
+ its(:title) { should eq 'YouTube Policy and Copyright' }
54
+ its(:description) { should eq 'Learn more about copyright basics, flagging, and the YouTube community.' }
55
+ its(:keywords) { should be_nil }
56
+ its(:duration) { should be_nil }
57
+ its(:width) { should be_nil }
58
+ its(:height) { should be_nil }
59
+ its(:date) { should be_nil }
60
+ its(:thumbnail_small) { should eq 'http://i.ytimg.com/vi/8b0aEoxqqC0/default.jpg' }
61
+ its(:thumbnail_medium) { should eq 'http://i.ytimg.com/vi/8b0aEoxqqC0/mqdefault.jpg' }
62
+ its(:thumbnail_large) { should eq 'http://i.ytimg.com/vi/8b0aEoxqqC0/hqdefault.jpg' }
63
+ its(:videos) { should match_array(videos) }
64
+ its(:view_count) { should be_nil }
65
+ end
66
+ end
@@ -19,6 +19,11 @@ describe VideoInfo::Providers::Youtube do
19
19
  let(:url) { 'http://google.com/video1' }
20
20
  it { should be_false }
21
21
  end
22
+
23
+ context "with playlist url" do
24
+ let(:url) { 'http://www.youtube.com/playlist?p=PLA575C81A1FBC04CF' }
25
+ it { should be_false }
26
+ end
22
27
  end
23
28
 
24
29
  describe "#available?" do
@@ -47,4 +47,24 @@ describe VideoInfo do
47
47
  end
48
48
  end
49
49
 
50
+ describe "#==" do
51
+ let(:vi_a) { VideoInfo.new('http://www.youtube.com/watch?v=AT_5xOGh6Ko') }
52
+ let(:vi_b) { VideoInfo.new('http://www.youtube.com/watch?v=AT_5xOGh6Ko') }
53
+ let(:vi_c) { VideoInfo.new('http://vimeo.com/86701482') }
54
+
55
+ context "matching" do
56
+ it "returns true" do
57
+ expect(vi_a == vi_a).to be_true
58
+ expect(vi_a == vi_b).to be_true
59
+ end
60
+ end
61
+
62
+ context "not matching" do
63
+ it "returns false" do
64
+ expect(vi_a == vi_c).to be_false
65
+ expect(vi_b == vi_c).to be_false
66
+ end
67
+ end
68
+ end
69
+
50
70
  end
data/video_info.gemspec CHANGED
@@ -9,16 +9,16 @@ Gem::Specification.new do |s|
9
9
  s.license = 'MIT'
10
10
 
11
11
  s.author = 'Thibaud Guillaume-Gentil'
12
- s.email = 'thibaud@thibaud.me'
12
+ s.email = 'thibaud@thibaud.gg'
13
13
  s.homepage = 'https://rubygems.org/gems/video_info'
14
- s.summary = 'YouTube, Vimeo & VK parser'
15
- s.description = 'Get video info from YouTube, Vimeo and VK url.'
14
+ s.summary = 'Dailymotion, Vimeo, VK and YouTube info parser.'
15
+ s.description = 'Get video info from Dailymotion, Vimeo, VK and YouTube url.'
16
16
 
17
17
  s.files = `git ls-files`.split($/)
18
18
  s.test_files = s.files.grep(%r{^spec/})
19
19
  s.require_path = 'lib'
20
20
 
21
- s.required_ruby_version = '>= 1.9.2'
21
+ s.required_ruby_version = '>= 1.9.3'
22
22
 
23
23
  s.add_dependency 'addressable'
24
24
  s.add_dependency 'multi_json'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: video_info
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thibaud Guillaume-Gentil
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-20 00:00:00.000000000 Z
11
+ date: 2014-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -122,8 +122,8 @@ dependencies:
122
122
  - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
- description: Get video info from YouTube, Vimeo and VK url.
126
- email: thibaud@thibaud.me
125
+ description: Get video info from Dailymotion, Vimeo, VK and YouTube url.
126
+ email: thibaud@thibaud.gg
127
127
  executables: []
128
128
  extensions: []
129
129
  extra_rdoc_files: []
@@ -137,10 +137,25 @@ files:
137
137
  - Rakefile
138
138
  - lib/video_info.rb
139
139
  - lib/video_info/provider.rb
140
+ - lib/video_info/providers/dailymotion.rb
140
141
  - lib/video_info/providers/vimeo.rb
141
142
  - lib/video_info/providers/vkontakte.rb
142
143
  - lib/video_info/providers/youtube.rb
144
+ - lib/video_info/providers/youtubeplaylist.rb
143
145
  - lib/video_info/version.rb
146
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_This_video_does_not_exist_or_has_been_deleted_/available_/.yml
147
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_valid_video/available_/.yml
148
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_is_unavailable_video/available_/.yml
149
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_no_longer_available_due_to_a_copyright_claim_video/available_/.yml
150
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/date/.yml
151
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/description/.yml
152
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/duration/.yml
153
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/keywords/.yml
154
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_large/.yml
155
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_medium/.yml
156
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_small/.yml
157
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/title/.yml
158
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/view_count/.yml
144
159
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_password_required_video/available_/.yml
145
160
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_this_video_does_not_exist_video/available_/.yml
146
161
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_valid_video/available_/.yml
@@ -188,9 +203,24 @@ files:
188
203
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/thumbnail_small/.yml
189
204
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/title/.yml
190
205
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/view_count/.yml
206
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_invalid_playlist/available_/.yml
207
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_valid_playlist/available_/.yml
208
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/.yml
209
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/date/.yml
210
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/description/.yml
211
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/duration/.yml
212
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/keywords/.yml
213
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_large/.yml
214
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_medium/.yml
215
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_small/.yml
216
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/title/.yml
217
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/videos/.yml
218
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/view_count/.yml
191
219
  - spec/lib/video_info/provider_spec.rb
220
+ - spec/lib/video_info/providers/dailymotion_spec.rb
192
221
  - spec/lib/video_info/providers/vimeo_spec.rb
193
222
  - spec/lib/video_info/providers/vkontakte_spec.rb
223
+ - spec/lib/video_info/providers/youtube_playlist_spec.rb
194
224
  - spec/lib/video_info/providers/youtube_spec.rb
195
225
  - spec/lib/video_info_spec.rb
196
226
  - spec/spec_helper.rb
@@ -207,7 +237,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
207
237
  requirements:
208
238
  - - ">="
209
239
  - !ruby/object:Gem::Version
210
- version: 1.9.2
240
+ version: 1.9.3
211
241
  required_rubygems_version: !ruby/object:Gem::Requirement
212
242
  requirements:
213
243
  - - ">="
@@ -218,8 +248,21 @@ rubyforge_project:
218
248
  rubygems_version: 2.2.1
219
249
  signing_key:
220
250
  specification_version: 4
221
- summary: YouTube, Vimeo & VK parser
251
+ summary: Dailymotion, Vimeo, VK and YouTube info parser.
222
252
  test_files:
253
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_This_video_does_not_exist_or_has_been_deleted_/available_/.yml
254
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_valid_video/available_/.yml
255
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_is_unavailable_video/available_/.yml
256
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/_available_/with_video_no_longer_available_due_to_a_copyright_claim_video/available_/.yml
257
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/date/.yml
258
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/description/.yml
259
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/duration/.yml
260
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/keywords/.yml
261
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_large/.yml
262
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_medium/.yml
263
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/thumbnail_small/.yml
264
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/title/.yml
265
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Dailymotion/with_video_x7lni3/view_count/.yml
223
266
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_password_required_video/available_/.yml
224
267
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_this_video_does_not_exist_video/available_/.yml
225
268
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Vimeo/_available_/with_valid_video/available_/.yml
@@ -267,9 +310,24 @@ test_files:
267
310
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/thumbnail_small/.yml
268
311
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/title/.yml
269
312
  - spec/fixtures/vcr_cassettes/VideoInfo_Providers_Youtube/with_video_mZqGqE0D0n4/view_count/.yml
313
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_invalid_playlist/available_/.yml
314
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/_available_/with_valid_playlist/available_/.yml
315
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/.yml
316
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/date/.yml
317
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/description/.yml
318
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/duration/.yml
319
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/keywords/.yml
320
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_large/.yml
321
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_medium/.yml
322
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/thumbnail_small/.yml
323
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/title/.yml
324
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/videos/.yml
325
+ - spec/fixtures/vcr_cassettes/VideoInfo_Providers_YoutubePlaylist/with_playlist_PL9hW1uS6HUftLdHI6RIsaf/view_count/.yml
270
326
  - spec/lib/video_info/provider_spec.rb
327
+ - spec/lib/video_info/providers/dailymotion_spec.rb
271
328
  - spec/lib/video_info/providers/vimeo_spec.rb
272
329
  - spec/lib/video_info/providers/vkontakte_spec.rb
330
+ - spec/lib/video_info/providers/youtube_playlist_spec.rb
273
331
  - spec/lib/video_info/providers/youtube_spec.rb
274
332
  - spec/lib/video_info_spec.rb
275
333
  - spec/spec_helper.rb