echonest 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +7 -0
  3. data/Rakefile +56 -0
  4. data/VERSION.yml +4 -0
  5. data/examples/artist_audio.rb +33 -0
  6. data/generators/echonest_acceptance_test/USAGE +5 -0
  7. data/generators/echonest_acceptance_test/echonest_acceptance_test_generator.rb +50 -0
  8. data/generators/echonest_acceptance_test/templates/feature.erb +8 -0
  9. data/generators/echonest_model/USAGE +5 -0
  10. data/generators/echonest_model/echonest_model_generator.rb +52 -0
  11. data/generators/echonest_model/templates/doc.rb.erb +12 -0
  12. data/generators/echonest_model/templates/result.rb.erb +12 -0
  13. data/generators/echonest_model/templates/results.rb.erb +15 -0
  14. data/generators/echonest_resource/USAGE +5 -0
  15. data/generators/echonest_resource/echonest_resource_generator.rb +50 -0
  16. data/generators/echonest_unit_test/USAGE +5 -0
  17. data/generators/echonest_unit_test/echonest_unit_test_generator.rb +50 -0
  18. data/generators/echonest_unit_test/templates/unit_test.rb.erb +44 -0
  19. data/lib/echonest.rb +56 -0
  20. data/lib/echonest/api_request.rb +26 -0
  21. data/lib/echonest/artist.rb +74 -0
  22. data/lib/echonest/paged_result.rb +33 -0
  23. data/lib/echonest/xml/artist_doc.rb +23 -0
  24. data/lib/echonest/xml/artist_search_results.rb +14 -0
  25. data/lib/echonest/xml/audio_doc.rb +20 -0
  26. data/lib/echonest/xml/audio_result.rb +13 -0
  27. data/lib/echonest/xml/audio_results.rb +16 -0
  28. data/lib/echonest/xml/blogs_doc.rb +15 -0
  29. data/lib/echonest/xml/blogs_result.rb +14 -0
  30. data/lib/echonest/xml/blogs_results.rb +18 -0
  31. data/lib/echonest/xml/familiarity_result.rb +12 -0
  32. data/lib/echonest/xml/hotttnesss_result.rb +12 -0
  33. data/lib/echonest/xml/news_doc.rb +15 -0
  34. data/lib/echonest/xml/news_result.rb +14 -0
  35. data/lib/echonest/xml/news_results.rb +16 -0
  36. data/lib/echonest/xml/profile_result.rb +12 -0
  37. data/lib/echonest/xml/reviews_doc.rb +16 -0
  38. data/lib/echonest/xml/reviews_result.rb +15 -0
  39. data/lib/echonest/xml/reviews_results.rb +17 -0
  40. data/lib/echonest/xml/similar_doc.rb +15 -0
  41. data/lib/echonest/xml/similar_result.rb +14 -0
  42. data/lib/echonest/xml/similar_results.rb +16 -0
  43. data/lib/echonest/xml/urls_result.rb +14 -0
  44. data/lib/echonest/xml/video_doc.rb +16 -0
  45. data/lib/echonest/xml/video_result.rb +14 -0
  46. data/lib/echonest/xml/video_results.rb +17 -0
  47. data/spec/echonest/api_request_spec.rb +38 -0
  48. data/spec/echonest/paged_result_spec.rb +66 -0
  49. data/spec/echonest/xml/artist_search_results_spec.rb +25 -0
  50. data/spec/echonest/xml/audio_result_spec.rb +49 -0
  51. data/spec/echonest/xml/blogs_result_spec.rb +48 -0
  52. data/spec/echonest/xml/familiarity_result_spec.rb +33 -0
  53. data/spec/echonest/xml/hotttness_result_spec.rb +31 -0
  54. data/spec/echonest/xml/news_result_spec.rb +49 -0
  55. data/spec/echonest/xml/profile_result_spec.rb +26 -0
  56. data/spec/echonest/xml/refactor.rb +12 -0
  57. data/spec/echonest/xml/reviews_result_spec.rb +49 -0
  58. data/spec/echonest/xml/similar_result_spec.rb +35 -0
  59. data/spec/echonest/xml/urls_result_spec.rb +38 -0
  60. data/spec/echonest/xml/video_result_spec.rb +48 -0
  61. data/spec/fixtures/audio/wavves.xml +2 -0
  62. data/spec/fixtures/blog/radiohead.xml +32 -0
  63. data/spec/fixtures/familiarity/radiohead.xml +17 -0
  64. data/spec/fixtures/hotttnesss/radiohead.xml +17 -0
  65. data/spec/fixtures/news/radiohead.xml +32 -0
  66. data/spec/fixtures/profile/radiohead.xml +16 -0
  67. data/spec/fixtures/reviews/radiohead.xml +40 -0
  68. data/spec/fixtures/search_artists/wavves.xml +2 -0
  69. data/spec/fixtures/similar/radiohead.xml +31 -0
  70. data/spec/fixtures/urls/radiohead.xml +21 -0
  71. data/spec/fixtures/video/radiohead.xml +32 -0
  72. data/spec/spec_helper.rb +15 -0
  73. data/test/test_echonest_acceptance_test_generator.rb +52 -0
  74. data/test/test_echonest_model_generator.rb +47 -0
  75. data/test/test_echonest_resource_generator.rb +45 -0
  76. data/test/test_echonest_unit_test_generator.rb +35 -0
  77. data/test/test_generator_helper.rb +29 -0
  78. metadata +164 -0
@@ -0,0 +1,49 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "NewsResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/news/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ NewsResult.parse(@xml)
13
+ end
14
+
15
+ it "should have artist" do
16
+ news = NewsResult.parse(@xml)
17
+ news.artist.should be_kind_of(ArtistDoc)
18
+ news.artist.name.should == "Radiohead"
19
+ news.artist.id.should == "music://id.echonest.com/~/AR/ARH6W4X1187B99274F"
20
+ end
21
+
22
+ it "should have results" do
23
+ news = NewsResult.parse(@xml)
24
+ news.results.should be_kind_of(NewsResults)
25
+
26
+ news.results.found.should == "67"
27
+ news.results.shown.should == "2"
28
+ news.results.start.should == "0"
29
+ news.results.docs.should be_kind_of(Array)
30
+ news.results.docs.length.should == 2
31
+ end
32
+
33
+ describe "result" do
34
+ it "should be an NewsDoc" do
35
+ news = NewsResult.parse(@xml)
36
+ doc = news.results.docs[0]
37
+ doc.should be_kind_of(NewsDoc)
38
+
39
+ doc.name.should == "Modeselektor supports Radiohead in Japan"
40
+ doc.url.should == "http://www.residentadvisor.net/news.aspx?id=9632"
41
+ doc.summary.should == "[news text removed]"
42
+ doc.date_found.should == "2008-11-26 21:19:35.356000"
43
+
44
+ end
45
+ end
46
+ end
47
+
48
+
49
+ end
@@ -0,0 +1,26 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "ProfileResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/profile/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ ProfileResult.parse(@xml)
13
+ end
14
+
15
+ it "should have artist" do
16
+ profile = ProfileResult.parse(@xml)
17
+ profile.artist.should be_kind_of(ArtistDoc)
18
+ profile.artist.name.should == "Radiohead"
19
+ profile.artist.id.should == "music://id.echonest.com/~/AR/ARH6W4X1187B99274F"
20
+ profile.artist.foreign_id.should == "music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1"
21
+ end
22
+
23
+ end
24
+
25
+
26
+ end
@@ -0,0 +1,12 @@
1
+
2
+
3
+ Dir.glob(File.dirname(__FILE__) + "/*_spec.rb").each do |file|
4
+ if File.exists? "#{file}.old"
5
+ `rm #{file}`
6
+ `mv #{file}.old #{file}`
7
+ end
8
+ `sed s:'/../spec_helper':'/../../spec_helper': #{file} | sed s:"/../fixtures/:"/../../fixtures/: | sed s/EchoNest::// | sed "s/\(Artist\)/\(ArtistDoc\)/" > #{file}.new`
9
+ `mv #{file} #{file}.old`
10
+ `mv #{file}.new #{file}`
11
+
12
+ end
@@ -0,0 +1,49 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "ReviewsResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/reviews/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ ReviewsResult.parse(@xml)
13
+ end
14
+
15
+ it "should have artist" do
16
+ reviews = ReviewsResult.parse(@xml)
17
+ reviews.artist.should be_kind_of(ArtistDoc)
18
+ reviews.artist.name.should == "Radiohead"
19
+ reviews.artist.id.should == "music://id.echonest.com/~/AR/ARH6W4X1187B99274F"
20
+ end
21
+
22
+ it "should have results" do
23
+ reviews = ReviewsResult.parse(@xml)
24
+ reviews.results.should be_kind_of(ReviewsResults)
25
+ #TODO: Fill in these values as found in fixture
26
+ reviews.results.found.should == "188"
27
+ reviews.results.shown.should == "2"
28
+ reviews.results.start.should == "0"
29
+ reviews.results.docs.should be_kind_of(Array)
30
+ reviews.results.docs.length.should == 2
31
+ end
32
+
33
+ describe "result" do
34
+ it "should be an ReviewsDoc" do
35
+ reviews = ReviewsResult.parse(@xml)
36
+ doc = reviews.results.docs[0]
37
+ doc.should be_kind_of(ReviewsDoc)
38
+ #TODO: Create tests based on attributes in resource
39
+ doc.name.should == "Radiohead - Hail to the Thief (from Robert Christgau)"
40
+ doc.review_text.should == "See: No Hope Radio."
41
+ doc.url.should == "http://www.robertchristgau.com/get_artist.php id=1113&name=Radiohead#Radiohead__Hail%20to%20the%20Thief"
42
+ doc.summary.should == "See: No Hope Radio."
43
+ doc.date_found.should == "2009-01-26T23:54:41"
44
+ end
45
+ end
46
+ end
47
+
48
+
49
+ end
@@ -0,0 +1,35 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "SimilarResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/similar/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ SimilarResult.parse(@xml)
13
+ end
14
+
15
+ it "should have results" do
16
+ similar = SimilarResult.parse(@xml)
17
+ similar.results.should be_kind_of(SimilarResults)
18
+ similar.results.docs.should be_kind_of(Array)
19
+ similar.results.docs.length.should == 3
20
+ end
21
+
22
+ describe "result" do
23
+ it "should be an SimilarDoc" do
24
+ similar = SimilarResult.parse(@xml)
25
+ doc = similar.results.docs[0]
26
+ doc.should be_kind_of(SimilarDoc)
27
+ doc.id.should == "music://id.echonest.com/~/AR/ARKG7TE1187B9A45D8"
28
+ doc.name.should == "Dinah Washington"
29
+ doc.rank.should == 1
30
+ end
31
+ end
32
+ end
33
+
34
+
35
+ end
@@ -0,0 +1,38 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "UrlsResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/urls/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ UrlsResult.parse(@xml)
13
+ end
14
+
15
+ it "should have artist" do
16
+ urls = UrlsResult.parse(@xml)
17
+ urls.artist.should be_kind_of(ArtistDoc)
18
+ urls.artist.name.should == "Radiohead"
19
+ urls.artist.id.should == "music://id.echonest.com/~/AR/ARH6W4X1187B99274F"
20
+ end
21
+
22
+ it "#artist should have urls" do
23
+ urls = UrlsResult.parse(@xml)
24
+ artist = urls.artist
25
+
26
+ artist.mb_url.should == "http://musicbrainz.org/artist/a74b1b7f-71a5-4011-9441-d0b5e4122711"
27
+ artist.official_url.should == "http://radiohead.com"
28
+ artist.myspace_url.should == "http://profile.myspace.com/215759866"
29
+ artist.wikipedia_url.should == "http://en.wikipedia.org/wiki/Radiohead"
30
+ artist.amazon_url.should == "http://www.amazon.com/gp/search?ie=UTF8&keywords=Radiohead&tag=httpechonecom-20&index=music"
31
+ artist.itunes_url.should == "http://click.linksynergy.com/fs-bin/stat?id=a9bjKyUFOyQ&offerid=78941&type=3&subid=0&tmpid=1826&RD_PARM1=itms%253A%252F%252Fphobos.apple.com%252FWebObjects%252FMZSearch.woa%252Fwa%252Fcom.apple.jingle.search.DirectAction%252FadvancedSearchResults%253FartistTerm%253DRadiohead%2526partnerId%3D30"
32
+
33
+ end
34
+
35
+ end
36
+
37
+
38
+ end
@@ -0,0 +1,48 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ describe "VideosResult" do
4
+
5
+ describe "#parse" do
6
+
7
+ before(:each) do
8
+ @xml = File.read(File.dirname(__FILE__) + "/../../fixtures/video/radiohead.xml")
9
+ end
10
+
11
+ it "should parse xml" do
12
+ VideoResult.parse(@xml)
13
+ end
14
+
15
+ it "should have artist" do
16
+ videos = VideoResult.parse(@xml)
17
+ videos.artist.should be_kind_of(ArtistDoc)
18
+ videos.artist.name.should == "Radiohead"
19
+ videos.artist.id.should == "music://id.echonest.com/~/AR/ARH6W4X1187B99274F"
20
+ end
21
+
22
+ it "should have results" do
23
+ videos = VideoResult.parse(@xml)
24
+ videos.results.should be_kind_of(VideoResults)
25
+
26
+ videos.results.found.should == "88"
27
+ videos.results.shown.should == "2"
28
+ videos.results.start.should == "0"
29
+ videos.results.docs.should be_kind_of(Array)
30
+ videos.results.docs.length.should == 2
31
+ end
32
+
33
+ describe "result" do
34
+ it "should be an VideoDoc" do
35
+ videos = VideoResult.parse(@xml)
36
+ doc = videos.results.docs[0]
37
+ doc.should be_kind_of(VideoDoc)
38
+
39
+ doc.site.should == "youtube"
40
+ doc.title.should == "Radiohead- Tell Me Why- Live Hollywood Bowl Neil Young 8-25"
41
+ doc.url.should == "http://youtube.com/watch?v=kHIJcx9EB94"
42
+ doc.date_found.should == "2008-11-02 16:32:27.001000"
43
+ end
44
+ end
45
+ end
46
+
47
+
48
+ end
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3"><status><code>0</code><message>Success</message></status><query><parameter name="api_key">CREDOYO7GFJ9OW3TV</parameter><parameter name="id">music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</parameter><parameter name="start">0</parameter><parameter name="rows">15</parameter><parameter name="format">xml</parameter></query><artist><name>Wavves</name><id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</id></artist><results found="51" shown="15" start="0"><doc id="67ae7bcb306c04dc933c158517366efc" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>So Bored (LIVE SXSW 2009)</title><url>http://www.2groundcontrol.com/IMAGENS/songs/03%20So%20Bored%20%28LIVE%20SXSW%202009%29.mp3</url><link>http://2groundcontrol.blogspot.com</link><length>265.0</length></doc><doc id="fcd91b8da229449ea4fa6931788b94e9" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavvves</release><title>So Bored</title><url>http://www.minneapolisfuckingrocks.com/mp3/wavves_sobored1.mp3</url><link>http://minneapolisfuckingrocks.blogspot.com</link><length>193.0</length></doc><doc id="d69d000d7bd6adb494dbc4fb2ef29088" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavvves</release><title>So Bored</title><url>http://www.yooglimusic.com/blog/wp-content/uploads/2009/04/06-so-bored.mp3</url><link>http://www.yooglimusic.com/blog/</link><length>193.0</length></doc><doc id="8930d130dc079588a728b1788ccad9ed" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavves</release><title>So Bored</title><url>http://www.catbirdseat.org/catbirdseat/wavves-sobored.mp3</url><link>http://stereopaste.blogspot.com/2009/02/wavves.html</link><length>193.0</length></doc><doc id="31fa8b7067b241dd055b21c59b7ac3f9" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavves</release><title>Teenage Super Party</title><url>http://livingears.com/music/Wavves/Teenage%20Super%20Party.mp3</url><link>http://livingears.blogspot.com/2009/02/wavves.html</link><length>101.0</length></doc><doc id="28348f549b4e712ead63703241293003" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavvves</release><title>Surf Goth</title><url>http://prettygoeswithpretty.typepad.com/files/09-surf-goth.mp3</url><link>http://prettygoeswithpretty.typepad.com/pgwp/</link><length>126.0</length></doc><doc id="5f991a5090c0a215b7a3ffcd26437cdd" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavvves</release><title>So Bored</title><url>http://www.thankscaptainobvious-mp3.net/06%20So%20Bored.mp3</url><link>http://www.thankscaptainobvious.net</link><length>193.0</length></doc><doc id="75ff3d8cf10786cf2a3e0ecca73b5e62" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>Wavvves</release><title>So Bored (new)</title><url>http://auralstates.com/Music/wavvessobored.mp3</url><link>http://auralstates.com/</link><length>193.0</length></doc><doc id="e9982eda02973eeccc14be3817c6d65b" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>SXSW 2009</release><title>So Bored</title><url>http://www.acertainromance.com/files/sxsw2009/Wavves_SoBored.mp3</url><link>http://www.acertainromance.com</link><length>193.0</length></doc><doc id="992030536bab5402bd3c92bf5ecc344b" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>Wavves</title><url>http://lullabyes.net/mp3/090320%20Wavves%20Austin%20TX%2005%20Wavves.mp3</url><link>http://www.lullabyes.net/blog/</link><length>198.0</length></doc><doc id="3c7e8a47725fc42abf79e6a54207c3eb" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>Satan Tried to Stop Me</title><url>http://lullabyes.net/mp3/090320%20Wavves%20Austin%20TX%2004%20Satan%20Tried%20to%20Stop%20Me.mp3</url><link>http://www.lullabyes.net/blog/</link><length>216.0</length></doc><doc id="9041a46be397081955e61b94cf67340e" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>To The Dregs</title><url>http://lullabyes.net/mp3/090320%20Wavves%20Austin%20TX%2002%20To%20The%20Dregs.mp3</url><link>http://www.lullabyes.net/blog/</link><length>220.0</length></doc><doc id="45c83c8dfd36a8de4bf70b5b3d45e507" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>So Bored</title><url>http://lullabyes.net/mp3/090320%20Wavves%20Austin%20TX%2003%20So%20Bored.mp3</url><link>http://www.lullabyes.net/blog/</link><length>265.0</length></doc><doc id="28a8ebed7733eab36bb5eaaed4433592" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>Wavves</artist><release>03/21/09 Austin TX</release><title>Intro</title><url>http://lullabyes.net/mp3/090320%20Wavves%20Austin%20TX%2001%20Intro.mp3</url><link>http://www.lullabyes.net/blog/</link><length>27.0</length></doc><doc id="bf11fe9e6c862060d41f4f41f70d06ac" type="audio"><artist_id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</artist_id><artist>WAVVES</artist><release>WAVVVES (ALBUM)</release><title>So Bored</title><url>http://fakepennycomics.com/blog/WAVV_SoBored.mp3</url><link>http://pastaprima.net</link><length>193.0</length></doc></results></response>
@@ -0,0 +1,32 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ <parameter name="start">0</parameter>
11
+ <parameter name="rows">2</parameter>
12
+ </query>
13
+ <artist>
14
+ <name>Radiohead</name>
15
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
16
+ <foreign_id>music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1</foreign_id>
17
+ </artist>
18
+ <results found="131" shown="2" start="0">
19
+ <doc id="808bd8998c36ca73ee35c77453461b05" type="web">
20
+ <name>Radiohead live at Santa Barbara 28.8.08 « Misspeak Music</name>
21
+ <url>http://misspeakmusic.wordpress.com/2008/09/01/radiohead-live-at-santa-barbara-28808/</url>
22
+ <summary>[blog text removed]</summary>
23
+ <date_found>2008-10-14 16:38:15.582000</date_found>
24
+ </doc>
25
+ <doc id="20fc2d49343546ba647ddcae5c0e70e0" type="web">
26
+ <name>Apartment 41: Radiohead's Santa Barbara Webcast</name>
27
+ <url>http://coldbrains41.blogspot.com/2008/08/radioheads-santa-barbara-webcast-video.html</url>
28
+ <summary>[blog text removed]</summary>
29
+ <date_found>2008-10-14 16:38:15.582000</date_found>
30
+ </doc>
31
+ </results>
32
+ </response>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ </query>
11
+ <artist>
12
+ <name>Radiohead</name>
13
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
14
+ <foreign_id>music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1</foreign_id>
15
+ <familiarity>0.96974159665</familiarity>
16
+ </artist>
17
+ </response>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ </query>
11
+ <artist>
12
+ <name>Radiohead</name>
13
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
14
+ <foreign_id>music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1</foreign_id>
15
+ <hotttnesss>0.96974159665</hotttnesss>
16
+ </artist>
17
+ </response>
@@ -0,0 +1,32 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ <parameter name="start">0</parameter>
11
+ <parameter name="rows">2</parameter>
12
+ </query>
13
+ <artist>
14
+ <name>Radiohead</name>
15
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
16
+ <foreign_id>music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1</foreign_id>
17
+ </artist>
18
+ <results found="67" shown="2" start="0">
19
+ <doc id="f43d70ef2692a56b9302a143adc68be0" type="web">
20
+ <name>Modeselektor supports Radiohead in Japan</name>
21
+ <url>http://www.residentadvisor.net/news.aspx?id=9632</url>
22
+ <summary>[news text removed]</summary>
23
+ <date_found>2008-11-26 21:19:35.356000</date_found>
24
+ </doc>
25
+ <doc id="0023ab6baeb5952faf3dc31818804752" type="web">
26
+ <name>Radiohead webcasting final show of U.S. tour tonight (Santa Barbara Bowl)</name>
27
+ <url>http://prefixmag.com/news/radiohead-webcasting-final-show-tour-santa-barbara/21104/</url>
28
+ <summary>news text removed</summary>
29
+ <date_found>2008-11-26 21:19:35.356000</date_found>
30
+ </doc>
31
+ </results>
32
+ </response>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ </query>
11
+ <artist>
12
+ <name>Radiohead</name>
13
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
14
+ <foreign_id>music://id.echonest.com/5ZAOMB3BUR8QUN4PE/AR/1</foreign_id>
15
+ </artist>
16
+ </response>
@@ -0,0 +1,40 @@
1
+ <response version="3">
2
+ <status>
3
+ <code>0</code>
4
+ <message>Success</message>
5
+ </status>
6
+ <query>
7
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
8
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
9
+ <parameter name="start">0</parameter>
10
+ <parameter name="rows">2</parameter>
11
+ </query>
12
+ <artist>
13
+ <name>Radiohead</name>
14
+ <id>music://id.echonest.com/~/AR/ARH6W4X1187B99274F</id>
15
+ </artist>
16
+ <results found="188" shown="2" start="0">
17
+ <doc id="e390f344b28e0c6fd4965b04ded7ea53" type="web">
18
+ <name>Radiohead - Hail to the Thief (from Robert Christgau)</name>
19
+ <review_text>See: No Hope Radio.</review_text>
20
+ <url>http://www.robertchristgau.com/get_artist.php id=1113&amp;name=Radiohead#Radiohead__Hail%20to%20the%20Thief</url>
21
+ <summary>See: No Hope Radio.</summary>
22
+ <date_found>2009-01-26T23:54:41</date_found>
23
+ </doc>
24
+ <doc id="5b319703c7a5800c461bd1fccccb1527" type="web">
25
+ <name>Radiohead - Kid A (from Robert Christgau)</name>
26
+ <review_text>
27
+ I guess the fools who ceded these bummed-out Brits U2's world's-greatest-rock-band slot actually did care about what bigger fool Thom Yorke had to say as well as how he made it sound.
28
+ Why else the controversy over this bag of sonics Me, I'm so relieved Yorke's doing without lyrics. Presaging too damn much but no more a death knell for song than OK Computer was for
29
+ organic life, this is an imaginative, imitative variation on a pop staple: sadness made pretty. Alienated masterpiece nothing--it's dinner music. More claret
30
+ </review_text>
31
+ <url>
32
+ http://www.robertchristgau.com/get_artist.php id=1113&amp;name=Radiohead#Radiohead__Kid%20A
33
+ </url>
34
+ <summary>
35
+ I guess the fools who ceded these bummed-out Brits U2's world's-greatest-rock-band slot actually did care about what bigger fool Thom Yorke had to say as well as how he made it sound. Why else the controversy over this bag of sonics Me, I'm so relieved Yorke's doing without lyrics. Presaging too damn much but no more a death knell for song than OK Computer was for organic life, this is an imaginative, imitative variation on a pop staple: sadness made pretty. Alienated masterpiece nothing--it's ...
36
+ </summary>
37
+ <date_found>2009-01-26T23:54:41</date_found>
38
+ </doc>
39
+ </results>
40
+ </response>
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3"><status><code>0</code><message>Success</message></status><query><parameter name="api_key">CREDOYO7GFJ9OW3TV</parameter><parameter name="query">wavves</parameter><parameter name="sounds_like">Y</parameter><parameter name="exact">N</parameter></query><artists><artist><id>music://id.echonest.com/~/AR/ARVVZQP11E2835DBCB</id><name>Wavves</name></artist></artists></response>
@@ -0,0 +1,31 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <response version="3">
3
+ <status>
4
+ <code>0</code>
5
+ <message>Success</message>
6
+ </status>
7
+ <query>
8
+ <parameter name="api_key">5ZAOMB3BUR8QUN4PE</parameter>
9
+ <parameter name="id">music://id.echonest.com/~/AR/ARH6W4X1187B99274F</parameter>
10
+ <parameter name="id">music://id.echonest.com/~/AR/AR2UWUD1187B9B3B01</parameter>
11
+ <parameter name="start">0</parameter>
12
+ <parameter name="rows">3</parameter>
13
+ </query>
14
+ <similar>
15
+ <artist>
16
+ <id>music://id.echonest.com/~/AR/ARKG7TE1187B9A45D8</id>
17
+ <name>Dinah Washington</name>
18
+ <rank>1</rank>
19
+ </artist>
20
+ <artist>
21
+ <id>music://id.echonest.com/~/AR/AR7BGWD1187FB59CCB</id>
22
+ <name>music://id.echonest.com/~/AR/Aretha Franklin</name>
23
+ <rank>2</rank>
24
+ </artist>
25
+ <artist>
26
+ <id>music://id.echonest.com/~/AR/AREQIT21187B9AEB7F</id>
27
+ <name>Dusty Springfield</name>
28
+ <rank>3</rank>
29
+ </artist>
30
+ </similar>
31
+ </response>