binged 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/HISTORY CHANGED
@@ -0,0 +1,4 @@
1
+ == 0.2.0 2010-03-12
2
+
3
+ === New features
4
+ * Added an Image source provider to allow for Image searching with Binged
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## About Binged
4
4
 
5
- A Ruby wrapper for the Bing API
5
+ A Ruby wrapper for the Bing API. DSL inspired by jnunemaker's [Twitter Gem](http://github.com/jnunemaker/twitter) Search API wrapper.
6
6
 
7
7
  ## Installation
8
8
 
@@ -31,11 +31,15 @@ Binged allows for configuration to be done once using a configure block. To use
31
31
 
32
32
  ### Web Search Example
33
33
 
34
- Web search utilizes a criteria based query interface inspired by jnunemaker's [Twitter Gem](http://github.com/jnunemaker/twitter) Search API wrapper.
35
-
36
34
  # Find 30 results for ruby from site http://www.ruby-lang.org
37
35
  web_search = Binged::Client.new.web
38
- web_search.containing('ruby').from_site('www.ruby-lang.org').per_page(30).each {|result| puts result.title }
36
+ web_search.containing('ruby').from_site('www.ruby-lang.org').per_page(30).each {|result| pp result }
37
+
38
+ ### Image Search Example
39
+
40
+ # Find all portrait Matz images with a wide aspect ratio
41
+ image_search = Binged::Client.new.image
42
+ image_search.containing('Yukihiro Matsumoto').portrait.wide.each {|image| pp image}
39
43
 
40
44
  ## Note on Patches/Pull Requests
41
45
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.2.0
data/binged.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{binged}
8
- s.version = "0.1.1"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kevin Faustino"]
12
- s.date = %q{2010-03-08}
12
+ s.date = %q{2010-03-12}
13
13
  s.description = %q{A wrapper for the bing api}
14
14
  s.email = %q{kevin.faustino@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -30,12 +30,17 @@ Gem::Specification.new do |s|
30
30
  "lib/binged/hashie_extensions.rb",
31
31
  "lib/binged/search.rb",
32
32
  "lib/binged/search/base.rb",
33
+ "lib/binged/search/image.rb",
33
34
  "lib/binged/search/web.rb",
35
+ "spec/binged/search/image_spec.rb",
34
36
  "spec/binged/search/web_spec.rb",
35
37
  "spec/binged_spec.rb",
38
+ "spec/fixtures/images.json",
36
39
  "spec/fixtures/web.json",
37
40
  "spec/spec.opts",
38
- "spec/spec_helper.rb"
41
+ "spec/spec_helper.rb",
42
+ "spec/support/shared_examples/filter.rb",
43
+ "spec/support/shared_examples/pageable.rb"
39
44
  ]
40
45
  s.homepage = %q{http://github.com/kfaustino/binged}
41
46
  s.rdoc_options = ["--charset=UTF-8"]
@@ -43,9 +48,12 @@ Gem::Specification.new do |s|
43
48
  s.rubygems_version = %q{1.3.6}
44
49
  s.summary = %q{A wrapper for the bing api}
45
50
  s.test_files = [
46
- "spec/binged/search/web_spec.rb",
51
+ "spec/binged/search/image_spec.rb",
52
+ "spec/binged/search/web_spec.rb",
47
53
  "spec/binged_spec.rb",
48
- "spec/spec_helper.rb"
54
+ "spec/spec_helper.rb",
55
+ "spec/support/shared_examples/filter.rb",
56
+ "spec/support/shared_examples/pageable.rb"
49
57
  ]
50
58
 
51
59
  if s.respond_to? :specification_version then
data/lib/binged/client.rb CHANGED
@@ -17,6 +17,13 @@ module Binged
17
17
  def web(query='')
18
18
  Search::Web.new(self,query)
19
19
  end
20
+
21
+ # Create a image search through Bing
22
+ #
23
+ # @param [String] query The search term to be sent to Bing
24
+ def image(query='')
25
+ Search::Image.new(self,query)
26
+ end
20
27
 
21
28
  end
22
29
 
@@ -1,7 +1,7 @@
1
1
  module Binged
2
2
  module Search
3
-
4
- # @abstract Subclass and override {#fetch} to implement a custom Searchable class
3
+
4
+ # @abstract Subclass and set @source to implement a custom Searchable class
5
5
  class Base
6
6
  include Enumerable
7
7
  attr_reader :client, :query, :source
@@ -9,9 +9,21 @@ module Binged
9
9
  BASE_URI = 'http://api.bing.net/json.aspx?'
10
10
 
11
11
  # @param [Binged::Client] client
12
- def initialize(client)
12
+ # @param [String] query The search term to be sent to Bing
13
+ def initialize(client, query=nil)
13
14
  @client = client
15
+ @callbacks = []
14
16
  reset_query
17
+ containing(query) if query && query.strip != ''
18
+ end
19
+
20
+ # Add query to search
21
+ #
22
+ # @param [String] query The search term to be sent to Bing
23
+ # @return [self]
24
+ def containing(query)
25
+ @query[:Query] << query
26
+ self
15
27
  end
16
28
 
17
29
  # Clears all filters to perform a new search
@@ -20,19 +32,30 @@ module Binged
20
32
  reset_query
21
33
  self
22
34
  end
23
-
35
+
36
+ # Retrieve results of the web search. Limited to first 1000 results.
37
+ #
38
+ # @return [Hash] A hash of the results returned from Bing
24
39
  def fetch
40
+ if @fetch.nil?
41
+ response = perform
42
+ @fetch = Hashie::Mash.new(response["SearchResponse"][self.source.to_s.capitalize])
43
+ end
44
+
45
+ @fetch
25
46
  end
26
47
 
27
48
  # Performs a GET call to Bing API
28
- #
49
+ #
29
50
  # @return [Hash] Hash of Bing API response
30
51
  def perform
31
52
  url = URI.parse BASE_URI
32
53
  query = @query.dup
33
- query[:Query] = query[:Query].join(' ')
54
+ query[:Query] = query[:Query].join(' ')
34
55
  query[:Sources] = self.source
56
+ callbacks.each {|callback| callback.call(query) }
35
57
  query_options = default_options.merge(query).to_params
58
+ query_options.gsub! '%2B', '+'
36
59
  url.query = query_options
37
60
  response = Net::HTTP.get(url)
38
61
  Crack::JSON.parse(response)
@@ -43,6 +66,10 @@ module Binged
43
66
  fetch().results.each { |r| yield r }
44
67
  end
45
68
 
69
+ protected
70
+
71
+ attr_reader :callbacks
72
+
46
73
  private
47
74
 
48
75
  def default_options
@@ -50,8 +77,9 @@ module Binged
50
77
  end
51
78
 
52
79
  def reset_query
53
- @query = { :Query => [] }
80
+ @query = { :Query => [] }
54
81
  end
82
+
55
83
  end
56
84
 
57
85
  end
@@ -0,0 +1,120 @@
1
+ module Binged
2
+ module Search
3
+
4
+ # A class that encapsulated the Bing Image Search source
5
+ class Image < Base
6
+ include Filter
7
+ include Pageable
8
+
9
+ # @param [Binged::Client] client
10
+ # @param [String] query The search term to be sent to Bing
11
+ # @param [Hash] options
12
+ def initialize(client, query=nil, options={})
13
+ super(client, query)
14
+ @source = :image
15
+ set_paging_defaults
16
+ create_filter_callback
17
+ end
18
+
19
+ # Restrict images to those small in size
20
+ def small
21
+ filter << 'Size:Small'
22
+ self
23
+ end
24
+
25
+ # Restrict images to those medium in size
26
+ def medium
27
+ filter << 'Size:Medium'
28
+ self
29
+ end
30
+
31
+ # Restrict images to those large in size
32
+ def large
33
+ filter << 'Size:Large'
34
+ self
35
+ end
36
+
37
+ # Restrict images to the specified height in pixels
38
+ #
39
+ # @param [Fixnum] pixels height in pixels
40
+ def height(pixels)
41
+ filter << "Size:Height:#{pixels}"
42
+ self
43
+ end
44
+
45
+ # Restrict images to the specified width in pixels
46
+ #
47
+ # @param [Fixnum] pixels width in pixels
48
+ def width(pixels)
49
+ filter << "Size:Width:#{pixels}"
50
+ self
51
+ end
52
+
53
+ # Restrict images to those that have a square aspect ratio
54
+ def square
55
+ filter << 'Aspect:Square'
56
+ self
57
+ end
58
+
59
+ # Restrict images to those that have a wide aspect ratio
60
+ def wide
61
+ filter << 'Aspect:Wide'
62
+ self
63
+ end
64
+
65
+ # Restrict images to those that have a tall aspect ratio
66
+ def tall
67
+ filter << 'Aspect:Tall'
68
+ self
69
+ end
70
+
71
+ # Restrict images to those that are in color
72
+ def color
73
+ filter << 'Color:Color'
74
+ self
75
+ end
76
+
77
+ # Restrict images to those which contain photos
78
+ def photo
79
+ filter << 'Style:Photo'
80
+ self
81
+ end
82
+
83
+ # Restrict images to those which contain graphics or illustrations
84
+ def graphics
85
+ filter << 'Style:Graphics'
86
+ self
87
+ end
88
+
89
+ # Restrict images to those that are in black and white
90
+ def monochrome
91
+ filter << 'Color:Monochrome'
92
+ self
93
+ end
94
+
95
+ # Restrict images to those which contain faces
96
+ def face
97
+ filter << 'Face:Face'
98
+ self
99
+ end
100
+
101
+ # Restrict images to those which contain portraits(head and shoulders)
102
+ def portrait
103
+ filter << 'Face:Portrait'
104
+ self
105
+ end
106
+
107
+ private
108
+
109
+ def create_filter_callback
110
+ @callbacks << Proc.new { |query| query['Image.Filters'] = query['Image.Filters'].join('+') if query['Image.Filters'] }
111
+ end
112
+
113
+ def filter
114
+ @query['Image.Filters'] ||= []
115
+ end
116
+
117
+ end
118
+
119
+ end
120
+ end
@@ -4,8 +4,8 @@ module Binged
4
4
  # A class that encapsulated the Bing Web Search source
5
5
  # @todo Add support for adult and market filtering
6
6
  class Web < Base
7
-
8
- SEARCH_RESULTS_LIMIT = 1000
7
+ include Filter
8
+ include Pageable
9
9
 
10
10
  SUPPORTED_FILE_TYPES = [:doc, :dwf, :feed, :htm, :html, :pdf, :ppt, :ps, :rtf, :text, :txt, :xls]
11
11
 
@@ -13,31 +13,9 @@ module Binged
13
13
  # @param [String] query The search term to be sent to Bing
14
14
  # @param [Hash] options
15
15
  def initialize(client, query=nil, options={})
16
- super(client)
16
+ super(client, query)
17
17
  @source = :web
18
- per_page(20).page(1)
19
- containing(query) if query && query.strip != ''
20
- end
21
-
22
- # Add query to search
23
- #
24
- # @param [String] query The search term to be sent to Bing
25
- # @return [self]
26
- def containing(query)
27
- @query[:Query] << query
28
- self
29
- end
30
-
31
- # Retrieve results of the web search. Limited to first 1000 results.
32
- #
33
- # @return [Hash] A hash of the results returned from Bing
34
- def fetch
35
- if @fetch.nil?
36
- response = perform
37
- @fetch = Hashie::Mash.new(response["SearchResponse"]["Web"])
38
- end
39
-
40
- @fetch
18
+ set_paging_defaults
41
19
  end
42
20
 
43
21
  # Add filtering based on a file type
@@ -53,50 +31,6 @@ module Binged
53
31
  self
54
32
  end
55
33
 
56
- # Isolate search results to a specific site
57
- #
58
- # @example
59
- # web_search.from_site('www.ruby-lang.org')
60
- #
61
- # @param [String] site Web site address to limit search results to
62
- # @return [self]
63
- def from_site(site)
64
- @query[:Query] << "site:#{site}"
65
- self
66
- end
67
-
68
- # Set the page number of the results to display
69
- #
70
- # @param [Fixnum] num The page number of the search results
71
- # @return [self]
72
- def page(num=1)
73
- @offset = num - 1
74
- @query['Web.Offset'] = @results_per_page * @offset
75
- self
76
- end
77
-
78
- # The amount of results to display per page. Initialized to 20 per page.
79
- #
80
- # @param [Fixnum] num The number of results per page
81
- # @return [self]
82
- def per_page(num)
83
- @results_per_page = num
84
- @query['Web.Count'] = @results_per_page
85
- self
86
- end
87
-
88
- # The total amount of pages available
89
- #
90
- # @return[Fixnum] Amount of pages
91
- def total_pages
92
- bing_total = fetch.total.to_i
93
- if bing_total < SEARCH_RESULTS_LIMIT
94
- bing_total / @results_per_page
95
- else
96
- SEARCH_RESULTS_LIMIT / @results_per_page
97
- end
98
- end
99
-
100
34
  end
101
35
  end
102
36
  end
data/lib/binged/search.rb CHANGED
@@ -4,6 +4,53 @@ module Binged
4
4
 
5
5
  autoload :Base, "binged/search/base"
6
6
  autoload :Web, "binged/search/web"
7
+ autoload :Image, "binged/search/image"
7
8
 
9
+ module Pageable
10
+
11
+ # Set the page number of the results to display
12
+ #
13
+ # @param [Fixnum] num The page number of the search results
14
+ # @return [self]
15
+ def page(num=1)
16
+ @offset = num - 1
17
+ @query["#{@source.to_s.capitalize}.Offset"] = @results_per_page * @offset
18
+ self
19
+ end
20
+
21
+ # The amount of results to display per page. Initialized to 20 per page.
22
+ #
23
+ # @param [Fixnum] num The number of results per page
24
+ # @return [self]
25
+ def per_page(num)
26
+ @results_per_page = num
27
+ @query["#{@source.to_s.capitalize}.Count"] = @results_per_page
28
+ self
29
+ end
30
+
31
+ protected
32
+
33
+ def set_paging_defaults
34
+ self.per_page(20).page(1)
35
+ end
36
+
37
+ end
38
+
39
+ module Filter
40
+
41
+ # # Isolate search results to a specific site
42
+ #
43
+ # @example
44
+ # web_search.from_site('www.ruby-lang.org')
45
+ #
46
+ # @param [String] site Web site address to limit search results to
47
+ # @return [self]
48
+ def from_site(site)
49
+ @query[:Query] << "site:#{site}"
50
+ self
51
+ end
52
+
53
+ end
54
+
8
55
  end
9
56
  end
@@ -0,0 +1,157 @@
1
+ require 'spec_helper'
2
+
3
+ module Binged
4
+ module Search
5
+
6
+ describe "Image" do
7
+ include AnyFilter
8
+ include AnyPageable
9
+
10
+ before(:each) do
11
+ @client = Binged::Client.new(:api_key => 'binged')
12
+ @search = Image.new(@client)
13
+ end
14
+
15
+ it "should initialize with a search term" do
16
+ Image.new(@client, 'binged').query[:Query].should include('binged')
17
+ end
18
+
19
+ context "filtering" do
20
+
21
+ describe "size" do
22
+ it "should filter by small images" do
23
+ @search.small
24
+ @search.query['Image.Filters'].should include('Size:Small')
25
+ end
26
+
27
+ it "should filter by medium images" do
28
+ @search.medium
29
+ @search.query['Image.Filters'].should include('Size:Medium')
30
+ end
31
+
32
+ it "should filter by large images" do
33
+ @search.large
34
+ @search.query['Image.Filters'].should include('Size:Large')
35
+ end
36
+
37
+ end
38
+
39
+ describe "size" do
40
+
41
+ it "should filter for images with a specified height in pixels" do
42
+ @search.height 100
43
+ @search.query['Image.Filters'].should include('Size:Height:100')
44
+ end
45
+
46
+ it "should filter for images with a specified width in pixels" do
47
+ @search.width 150
48
+ @search.query['Image.Filters'].should include('Size:Width:150')
49
+ end
50
+
51
+ end
52
+
53
+ describe "aspect" do
54
+
55
+ %w(Square Wide Tall).each do |aspect|
56
+
57
+ it "should restrict image results to those with #{aspect} aspect ratios" do
58
+ @search.send aspect.downcase.to_sym
59
+ @search.query['Image.Filters'].should include("Aspect:#{aspect}")
60
+ end
61
+
62
+ end
63
+
64
+ end
65
+
66
+ describe "color" do
67
+
68
+ %w(Color Monochrome).each do |color|
69
+
70
+ it "should restrict image results to those which are in #{color}" do
71
+ @search.send color.downcase.to_sym
72
+ @search.query["Image.Filters"].should include("Color:#{color}")
73
+ end
74
+
75
+ end
76
+
77
+ end
78
+
79
+ describe "style" do
80
+
81
+ %w(Photo Graphics).each do |style|
82
+
83
+ it "should restrict image results to those which have a #{style} style" do
84
+ @search.send style.downcase.to_sym
85
+ @search.query["Image.Filters"].should include("Style:#{style}")
86
+ end
87
+
88
+ end
89
+
90
+ end
91
+
92
+ describe "faces" do
93
+
94
+ %w(Face Portrait).each do |face|
95
+
96
+ it "should restrict image results to those which contain a #{face}" do
97
+ @search.send face.downcase.to_sym
98
+ @search.query["Image.Filters"].should include("Face:#{face}")
99
+ end
100
+
101
+ end
102
+
103
+ end
104
+
105
+ end
106
+
107
+ context "fetching" do
108
+
109
+ before(:each) do
110
+ stub_get("http://api.bing.net/json.aspx?AppId=binged&JsonType=raw&Image.Offset=0&Image.Count=20&Sources=image&Version=2.2&Query=ruby", 'images.json')
111
+ @search.containing("ruby")
112
+ @response = @search.fetch
113
+ end
114
+
115
+ it "should cache fetch to eliminate multiple calls to the api" do
116
+ Image.should_not_receive(:perform)
117
+ @search.fetch
118
+ end
119
+
120
+ it "should return the results of the search" do
121
+ @response.results.size.should == 20
122
+ end
123
+
124
+ it "should support dot notation" do
125
+ result = @response.results.first
126
+ result.title.should == "ruby is said to give name ... "
127
+ result.media_url.should == "http://www.shopping.astrolozy.com/images/gems/ruby.jpg"
128
+ result.url.should == 'http://www.shopping.astrolozy.com/gems.asp'
129
+ result.width.should == 506
130
+ result.height.should == 500
131
+ result.file_size.should == 23354
132
+ result.content_type.should == 'image/jpeg'
133
+ end
134
+
135
+ end
136
+
137
+ context "iterating over results" do
138
+
139
+ before(:each) do
140
+ stub_get("http://api.bing.net/json.aspx?AppId=binged&JsonType=raw&Image.Offset=0&Image.Count=20&Sources=image&Version=2.2&Query=ruby", 'images.json')
141
+ @search.containing("ruby")
142
+ end
143
+
144
+ it "should be able to iterate over results" do
145
+ @search.respond_to?(:each).should be_true
146
+ end
147
+
148
+ it "should have items" do
149
+ @search.each {|item| item.should_not be_nil }
150
+ end
151
+
152
+ end
153
+
154
+ end
155
+
156
+ end
157
+ end
@@ -4,6 +4,8 @@ module Binged
4
4
  module Search
5
5
 
6
6
  describe "Web" do
7
+ include AnyFilter
8
+ include AnyPageable
7
9
 
8
10
  before(:each) do
9
11
  @client = Binged::Client.new(:api_key => 'binged')
@@ -13,26 +15,11 @@ module Binged
13
15
  it "should initialize with a search term" do
14
16
  Web.new(@client, 'binged').query[:Query].should include('binged')
15
17
  end
16
-
17
- it "should be able to specify a site to limit searches to" do
18
- @search.from_site('adventuresincoding.com')
19
- @search.query[:Query].should include('site:adventuresincoding.com')
20
- end
21
-
22
- it "should be able to specify the number of results per page" do
23
- @search.per_page(10)
24
- @search.query['Web.Count'].should == 10
25
- end
26
-
27
- it "should be able to specify the page number" do
28
- @search.page(3)
29
- @search.query['Web.Offset'].should == 20 * 2
30
- end
31
18
 
32
19
  it "should be able to set a file type" do
33
20
  @search.file_type(:pdf)
34
21
  @search.query['Web.FileType'].should == :pdf
35
- end
22
+ end
36
23
 
37
24
  context "fetching" do
38
25
 
@@ -50,28 +37,13 @@ module Binged
50
37
  it "should return the results of the search" do
51
38
  @response.results.size.should == 20
52
39
  end
53
-
40
+
54
41
  it "should support dot notation" do
55
42
  result = @response.results.first
56
43
  result.title.should == "Ruby Programming Language"
57
44
  result.description.should == "Ruby is… A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is ..."
58
45
  result.url.should == "http://www.ruby-lang.org/en/"
59
46
  end
60
-
61
- context "total pages" do
62
-
63
- it "should return of maximum amount of pages that does not exceed the the Bing limit" do
64
- bing_limit = 1000
65
- @response.should_receive(:total).and_return(bing_limit + 1)
66
- @search.total_pages.should == 50
67
- end
68
-
69
- it "should calculate the total amount of pages if the Bing results are less than the maximum limit" do
70
- @response.should_receive(:total).and_return(500)
71
- @search.total_pages.should == 25
72
- end
73
-
74
- end
75
47
 
76
48
  end
77
49
 
@@ -0,0 +1,9 @@
1
+ HTTP/1.1 200 OK
2
+ Cache-Control: private
3
+ Content-Length: 10377
4
+ Content-Type: application/json; charset=utf-8
5
+ P3P: CP="NON UNI COM NAV STA LOC CURa DEVa PSAa PSDa OUR IND", policyref="http://privacy.msn.com/w3c/p3p.xml"
6
+ Date: Fri, 12 Mar 2010 19:07:51 GMT
7
+ Connection: keep-alive
8
+
9
+ {"SearchResponse":{"Version":"2.2","Query":{"SearchTerms":"ruby"},"Image":{"Total":9480000,"Offset":0,"Results":[{"Title":"ruby is said to give name ... ","MediaUrl":"http:\/\/www.shopping.astrolozy.com\/images\/gems\/ruby.jpg","Url":"http:\/\/www.shopping.astrolozy.com\/gems.asp","DisplayUrl":"http:\/\/www.shopping.astrolozy.com\/gems.asp","Width":506,"Height":500,"FileSize":23354,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1382518625955&id=1a3a6af9c5c3f8d8e963c444c3005c8e","ContentType":"image\/jpeg","Width":160,"Height":158,"FileSize":1960}},{"Title":"Ruby is Cool","MediaUrl":"http:\/\/shakti.trincoll.edu\/~dmerrick\/images\/ruby.png","Url":"http:\/\/shakti.trincoll.edu\/~dmerrick\/dominos.html","DisplayUrl":"http:\/\/shakti.trincoll.edu\/~dmerrick\/dominos.html","Width":995,"Height":996,"FileSize":196597,"ContentType":"image\/png","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1436277871037&id=8ed5fbafc93ee35072ce6b879c342923","ContentType":"image\/jpeg","Width":159,"Height":160,"FileSize":3765}},{"Title":" ... Magazine :: Ruby Programming","MediaUrl":"http:\/\/www.bitwisemag.com\/images\/illustrations\/cover\/11\/ruby_landscape.jpg","Url":"http:\/\/www.bitwisemag.com\/copy\/features\/opinion\/ruby\/ruby_debate.html","DisplayUrl":"http:\/\/www.bitwisemag.com\/copy\/features\/opinion\/ruby\/ruby_debate.html","Width":500,"Height":300,"FileSize":41283,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1650430382906&id=c31d1fab3de1207c93380d08fd486553","ContentType":"image\/jpeg","Width":160,"Height":96,"FileSize":4182}},{"Title":" ... | Ruby - July Birthstone","MediaUrl":"http:\/\/www.kingsjewelry.com\/images\/content\/gemstones\/jul_ruby.jpg","Url":"http:\/\/www.kingsjewelry.com\/learning_gemstones_jul.shtml","DisplayUrl":"http:\/\/www.kingsjewelry.com\/learning_gemstones_jul.shtml","Width":200,"Height":217,"FileSize":12503,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1637993415897&id=9fdd97f930f99384bf7a22c00b13dd5e","ContentType":"image\/jpeg","Width":147,"Height":160,"FileSize":3760}},{"Title":" ... Ruby y Java, bastante ameno","MediaUrl":"http:\/\/img.genbeta.com\/ruby.jpg","Url":"http:\/\/www.genbeta.com\/2005\/11\/29-prueba-ruby","DisplayUrl":"http:\/\/www.genbeta.com\/2005\/11\/29-prueba-ruby","Width":220,"Height":212,"FileSize":9967,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1483533585596&id=72256534559fa421c55c98945442224d","ContentType":"image\/jpeg","Width":160,"Height":154,"FileSize":4040}},{"Title":"Ruby for Perl programmers ... ","MediaUrl":"http:\/\/migo.sixbit.org\/papers\/Introduction_to_Ruby\/ruby-diamond-ring-8.gif","Url":"http:\/\/migo.sixbit.org\/papers\/Introduction_to_Ruby\/slide-62.html","DisplayUrl":"http:\/\/migo.sixbit.org\/papers\/Introduction_to_Ruby\/slide-62.html","Width":428,"Height":375,"FileSize":76565,"ContentType":"image\/gif","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1637935745043&id=5d4c94a836c9b67c883e9fb5a7d62b29","ContentType":"image\/jpeg","Width":160,"Height":140,"FileSize":4244}},{"Title":"RUBY - THE BIRTH STONE FOR ... ","MediaUrl":"http:\/\/www.jewelinfo4u.com\/images\/Gallery\/ruby.jpg","Url":"http:\/\/www.jewelinfo4u.com\/ruby_buying_guide.aspx","DisplayUrl":"http:\/\/www.jewelinfo4u.com\/ruby_buying_guide.aspx","Width":392,"Height":306,"FileSize":105140,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1515275224324&id=f1362f29e41233bff0b243c5bc9d7f46","ContentType":"image\/jpeg","Width":160,"Height":124,"FileSize":2588}},{"Title":"Rubies | Ruby Jewelry ... ","MediaUrl":"http:\/\/www.khulsey.com\/jewelry\/7ruby.jpeg","Url":"http:\/\/www.khulsey.com\/jewelry\/gemstones_ruby.html","DisplayUrl":"http:\/\/www.khulsey.com\/jewelry\/gemstones_ruby.html","Width":300,"Height":131,"FileSize":40248,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1524785550028&id=69fd0a143053517033e2401530890e7f","ContentType":"image\/jpeg","Width":160,"Height":69,"FileSize":2991}},{"Title":" ... : The Carmen Lúcia Ruby","MediaUrl":"http:\/\/www.mnh.si.edu\/exhibits\/images\/ruby\/carmen_lucia_ruby_front.jpg","Url":"http:\/\/www.mnh.si.edu\/exhibits\/ruby\/index.htm","DisplayUrl":"http:\/\/www.mnh.si.edu\/exhibits\/ruby\/index.htm","Width":1782,"Height":2500,"FileSize":206422,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1419056847657&id=55a276ec38f10250d9b6c17a9f128f60","ContentType":"image\/jpeg","Width":114,"Height":160,"FileSize":3590}},{"Title":" Ruby Beads ] - [Buy Ruby ... ","MediaUrl":"http:\/\/www.gemsbiz.com\/docs\/Images\/Ruby_hs.jpg","Url":"http:\/\/www.gemsbiz.com\/docs\/ruby.asp","DisplayUrl":"http:\/\/www.gemsbiz.com\/docs\/ruby.asp","Width":200,"Height":200,"FileSize":10162,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1420070030955&id=3339fb85e638cd4ff6c72829497bf467","ContentType":"image\/jpeg","Width":160,"Height":160,"FileSize":4143}},{"Title":"Al Jabali exige que Ruby ... ","MediaUrl":"http:\/\/www.babnet.net\/images\/ruby.jpg","Url":"http:\/\/www.babnet.net\/cadredetail-1124.asp","DisplayUrl":"http:\/\/www.babnet.net\/cadredetail-1124.asp","Width":225,"Height":202,"FileSize":5295,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1594012730466&id=67c90b560456d0a8300a29565a660348","ContentType":"image\/jpeg","Width":160,"Height":143,"FileSize":3613}},{"Title":"Ruby est en retraite en ... ","MediaUrl":"http:\/\/www.grand-molosse.com\/images\/amstaff\/ruby1.jpg","Url":"http:\/\/www.grand-molosse.com\/new.php?photo=1&id=1&chien=ruby","DisplayUrl":"http:\/\/www.grand-molosse.com\/new.php?photo=1&id=1&chien=ruby","Width":350,"Height":323,"FileSize":42291,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1461553210312&id=c7c2db42bb8113eb22b81f3210981eec","ContentType":"image\/jpeg","Width":160,"Height":147,"FileSize":5856}},{"Title":"Ruby","MediaUrl":"http:\/\/www.diamondconnectionusa.com\/files\/1028\/Ruby.jpg","Url":"http:\/\/www.diamondconnectionusa.com\/default.asp?page=12444","DisplayUrl":"http:\/\/www.diamondconnectionusa.com\/default.asp?page=12444","Width":449,"Height":300,"FileSize":36460,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1502017425554&id=b6f02c4f6c14d696810a93f04f926560","ContentType":"image\/jpeg","Width":160,"Height":106,"FileSize":3482}},{"Title":"Ruby Célébrités arabes ... ","MediaUrl":"http:\/\/www.casafree.com\/modules\/xcgal\/albums\/userpics\/21032\/620%5B1%5D.jpg","Url":"http:\/\/www.casafree.com\/modules\/xcgal\/displayimage.php?pid=10754","DisplayUrl":"http:\/\/www.casafree.com\/modules\/xcgal\/displayimage.php?pid=10754","Width":350,"Height":350,"FileSize":19053,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1604364272148&id=0cb0eb5dab45a3f244daff63be315ca9","ContentType":"image\/jpeg","Width":160,"Height":160,"FileSize":4232}},{"Title":"Italian Ruby book and cool ... ","MediaUrl":"http:\/\/antoniocangiano.com\/files\/libro_ruby.jpg","Url":"http:\/\/antoniocangiano.com\/2006\/09\/08\/italian-ruby-book-and-book-suggestions\/","DisplayUrl":"http:\/\/antoniocangiano.com\/2006\/09\/08\/italian-ruby-book-and-book-suggestions\/","Width":709,"Height":977,"FileSize":130197,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1436879817675&id=7d3dee2226c8da86fe0881460f7339c2","ContentType":"image\/jpeg","Width":116,"Height":160,"FileSize":3763}},{"Title":"Ruby","MediaUrl":"http:\/\/www.herbal-treatments.com.au\/images\/ruby.jpg","Url":"http:\/\/www.herbal-treatments.com.au\/","DisplayUrl":"http:\/\/www.herbal-treatments.com.au\/","Width":400,"Height":322,"FileSize":25917,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1425780180958&id=9d9bb861757316c611c4762cc7edc867","ContentType":"image\/jpeg","Width":160,"Height":128,"FileSize":4526}},{"Title":"Ruby (video game thing ... ","MediaUrl":"http:\/\/media.giantbomb.com\/uploads\/1\/17166\/1032329-ruby_large.jpg","Url":"http:\/\/www.giantbomb.com\/ruby\/93-2051\/","DisplayUrl":"http:\/\/www.giantbomb.com\/ruby\/93-2051\/","Width":300,"Height":300,"FileSize":7035,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1695630885288&id=3992a257a3f22bf4c7fe83faa9c77fd7","ContentType":"image\/jpeg","Width":160,"Height":160,"FileSize":2378}},{"Title":"Natural Ruby Crystal from ... ","MediaUrl":"http:\/\/crystal-cure.com\/pics\/ruby-rough.jpg","Url":"http:\/\/crystal-cure.com\/ruby-gem.html","DisplayUrl":"http:\/\/crystal-cure.com\/ruby-gem.html","Width":300,"Height":300,"FileSize":33571,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts1.mm.bing.net\/images\/thumbnail.aspx?q=1419383019056&id=f53cf56946aeee00da72d2c5879fb80f","ContentType":"image\/jpeg","Width":160,"Height":160,"FileSize":4215}},{"Title":"RUBY , the red variety of ... ","MediaUrl":"http:\/\/www.galleries.com\/minerals\/gemstone\/ruby\/ruby.jpg","Url":"http:\/\/www.galleries.com\/minerals\/gemstone\/ruby\/ruby.htm","DisplayUrl":"http:\/\/www.galleries.com\/minerals\/gemstone\/ruby\/ruby.htm","Width":320,"Height":240,"FileSize":11726,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1431786629297&id=16036666f3eac28fc047fc5ce5a2c91a","ContentType":"image\/jpeg","Width":160,"Height":120,"FileSize":3581}},{"Title":" affriolante, le jolie Ruby ... ","MediaUrl":"http:\/\/catherineweibel.blog.lemonde.fr\/files\/2007\/03\/ruby.1173363147.jpg","Url":"http:\/\/catherineweibel.blog.lemonde.fr\/2006\/11\/22\/pharaonne\/","DisplayUrl":"http:\/\/catherineweibel.blog.lemonde.fr\/2006\/11\/22\/pharaonne\/","Width":275,"Height":404,"FileSize":24855,"ContentType":"image\/jpeg","Thumbnail":{"Url":"http:\/\/ts2.mm.bing.net\/images\/thumbnail.aspx?q=1389335544805&id=4ebd50849989e828d690d6f84f17bcc9","ContentType":"image\/jpeg","Width":108,"Height":160,"FileSize":3371}}]}}}
@@ -1 +1,9 @@
1
- {"SearchResponse":{"Version":"2.2","Query":{"SearchTerms":"ruby"},"Web":{"Total":29600000,"Offset":0,"Results":[{"Title":"Ruby Programming Language","Description":"Ruby is… A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is ...","Url":"http:\/\/www.ruby-lang.org\/en\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4627410722949096&w=54f314e7,2e58cc30","DisplayUrl":"www.ruby-lang.org\/en","DateTime":"2010-03-03T17:14:36Z","DeepLinks":[{"Title":"Downloads","Url":"http:\/\/www.ruby-lang.org\/en\/downloads\/"},{"Title":"Documentation","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/"},{"Title":"About Ruby","Url":"http:\/\/www.ruby-lang.org\/en\/about\/"},{"Title":"Ruby in Twenty Minutes","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/quickstart\/"},{"Title":"Libraries","Url":"http:\/\/www.ruby-lang.org\/en\/libraries\/"},{"Title":"Ruby from Other Languages","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/ruby-from-other-languages\/"},{"Title":"Community","Url":"http:\/\/www.ruby-lang.org\/en\/community\/"},{"Title":"Ruby Core","Url":"http:\/\/www.ruby-lang.org\/en\/community\/ruby-core\/"},{"Title":"News","Url":"http:\/\/www.ruby-lang.org\/en\/news\/"},{"Title":"Issue Tracking","Url":"http:\/\/redmine.ruby-lang.org\/"},{"Title":"Weblogs","Url":"http:\/\/www.ruby-lang.org\/en\/community\/weblogs\/"},{"Title":"Mailing Lists","Url":"http:\/\/www.ruby-lang.org\/en\/community\/mailing-lists"},{"Title":"Security","Url":"http:\/\/www.ruby-lang.org\/en\/security\/"}]},{"Title":"Ruby - Wikipedia, the free encyclopedia","Description":"A ruby is a pink to blood-red gemstone, a variety of the mineral corundum (aluminium oxide). The red color is caused mainly by the presence of the element chromium.","Url":"http:\/\/en.wikipedia.org\/wiki\/Ruby","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=661775063422&w=78e1f24a,3a2d897e","DisplayUrl":"en.wikipedia.org\/wiki\/Ruby","DateTime":"2010-02-27T07:18:03Z","DeepLinks":[{"Title":"Main page","Url":"http:\/\/en.wikipedia.org\/wiki\/Main_Page"},{"Title":"Random article","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:Random"},{"Title":"Contents","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Contents"},{"Title":"Current events","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Current_events"},{"Title":"Featured content","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Featured_content"},{"Title":"Wikipedia:About","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:About"},{"Title":"Citation Needed","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Citation_needed"},{"Title":"Sapphire","Url":"http:\/\/en.wikipedia.org\/wiki\/Sapphire"},{"Title":"Diamond","Url":"http:\/\/en.wikipedia.org\/wiki\/Diamond"},{"Title":"Ruby disambiguation","Url":"http:\/\/en.wikipedia.org\/wiki\/ruby_(disambiguation)"},{"Title":"Pakistan","Url":"http:\/\/en.wikipedia.org\/wiki\/Pakistan"},{"Title":"Birthstone","Url":"http:\/\/en.wikipedia.org\/wiki\/Birthstone"},{"Title":"Community portal","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Community_portal"}]},{"Title":"Ruby - The Inspirational Weight Loss Journey on the Style Network ...","Description":"Inspirational weight loss and weight loss exercises from the show Ruby on the Style Network","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/ruby\/index.jsp","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5041767689816463&w=bbeb6738,92443868","DisplayUrl":"www.mystyle.com\/mystyle\/shows\/ruby\/index.jsp","DateTime":"2010-03-03T17:50:23Z","DeepLinks":[{"Title":"Fashion DUI","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=bae9c59a-3236-426d-8eb6-33db1a459c31"},{"Title":"Top Steals of the Week","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=a02cc651-c811-4148-900a-fff42c858eb5"},{"Title":"Weight Loss Message Boards","Url":"http:\/\/www.mystyle.com\/mystyle\/community\/forums\/index.jsp"},{"Title":"Clean House Before & After","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=49b46faf-a336-4645-8d2b-e325a6d5e3a2"},{"Title":"Clean House","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/cleanhouse\/index.jsp"},{"Title":"Dress My Nest Before & After","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=9a4f89fc-e947-401b-ab9f-62f918b341a3"},{"Title":"Style Shout-Out","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=cee27be1-f8f4-44e8-a3b5-87da66c1412d"},{"Title":"Healthy Weight Loss","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/ruby\/gettinghealthy\/index.jsp"},{"Title":"Giuliana & Bill","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/giulianaandbill\/index.jsp"},{"Title":"Whose Wedding Is It Anyway?","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/whosewedding\/index.jsp"},{"Title":"How Do I Look?","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/howdoilook\/index.jsp"},{"Title":"Photo Galleries","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/index.jsp"},{"Title":"mystyle Quiz","Url":"http:\/\/www.mystyle.com\/mystyle\/games\/index.jsp?game=mystylequiz&navSection=fashion,beauty"}]},{"Title":"Ruby (programming language) - Wikipedia, the free encyclopedia","Description":"Ruby is a dynamic, reflective, general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features.","Url":"http:\/\/en.wikipedia.org\/wiki\/Ruby_(programming_language)","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5003684216244711&w=b7f38fb8,ccc1c0aa","DisplayUrl":"en.wikipedia.org\/wiki\/Ruby_(programming_language)","DateTime":"2010-03-04T11:36:58Z","DeepLinks":[{"Title":"Main page","Url":"http:\/\/en.wikipedia.org\/wiki\/Main_Page"},{"Title":"Random article","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:Random"},{"Title":"Current events","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Current_events"},{"Title":"Contents","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Contents"},{"Title":"Featured content","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Featured_content"},{"Title":"About Wikipedia","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:About"},{"Title":"Japan","Url":"http:\/\/en.wikipedia.org\/wiki\/Japan"},{"Title":"Recent changes","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:RecentChanges"},{"Title":"Community portal","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Community_portal"},{"Title":"Contact Wikipedia","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Contact_us"},{"Title":"Upload file","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Upload"},{"Title":"Special pages","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:SpecialPages"},{"Title":"Microsoft Windows","Url":"http:\/\/en.wikipedia.org\/wiki\/Microsoft_Windows"}]},{"Title":"Ruby - english","Description":"Ruby Which colour would you spontaneously associate with love and vivacity, passion and power? It's obvious, isn't it? Red. Red is the colour of love.","Url":"http:\/\/www.gemstone.org\/gem-by-gem\/english\/ruby.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4700979218418228&w=71813540,94f5edb5","DisplayUrl":"www.gemstone.org\/gem-by-gem\/english\/ruby.html","DateTime":"2010-03-03T16:31:39Z"},{"Title":"Ruby Meetup Groups - Ruby Meetups","Description":"Helps groups of people with shared interests plan meetings and form offline clubs in local communities around the world about Ruby","Url":"http:\/\/ruby.meetup.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=695343056075&w=73bd8912,24d17d8f","DisplayUrl":"ruby.meetup.com","DateTime":"2010-03-03T21:25:08Z"},{"Title":"Ruby (1992)","Description":"Directed by John Mackenzie. With Danny Aiello, Sherilyn Fenn, Arliss Howard. Visit IMDb for Photos, Showtimes, Cast, Crew, Reviews, Plot Summary, Comments, Discussions, Taglines ...","Url":"http:\/\/www.imdb.com\/title\/tt0105291\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4821474522039504&w=5143f877,76ab7637","DisplayUrl":"www.imdb.com\/title\/tt0105291","DateTime":"2010-02-04T07:59:38Z"},{"Title":"[Ruby-Doc.org: Documenting the Ruby Language]","Description":"Ruby documentation project: links and downloads of programming information, on many aspects of Ruby.","Url":"http:\/\/www.ruby-doc.org\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4998165183923249&w=ea8f6d25,95b1875e","DisplayUrl":"www.ruby-doc.org","DateTime":"2010-03-04T16:59:06Z","DeepLinks":[{"Title":"Standard API","Url":"http:\/\/www.ruby-doc.org\/stdlib\/"},{"Title":"Programming Ruby","Url":"http:\/\/www.ruby-doc.org\/docs\/ProgrammingRuby\/"},{"Title":"Files","Url":"http:\/\/www.ruby-doc.org\/core"},{"Title":"Getting Started","Url":"http:\/\/www.ruby-doc.org\/gettingstarted\/index.html"},{"Title":"Additional Documents","Url":"http:\/\/www.ruby-doc.org\/docs"},{"Title":"This","Url":"http:\/\/www.ruby-doc.org\/documentation-guidelines.html"},{"Title":"Standard Library","Url":"http:\/\/spec.ruby-doc.org\/wiki\/Ruby_Standard_Library"},{"Title":"Methods","Url":"http:\/\/www.ruby-doc.org\/core-1.8.7\/index.html"},{"Title":"Downloads","Url":"http:\/\/www.ruby-doc.org\/downloads\/"},{"Title":"Why Ruby","Url":"http:\/\/www.ruby-doc.org\/whyruby"},{"Title":"Ruby Spec: Core","Url":"http:\/\/spec.ruby-doc.org\/wiki\/Ruby_Core"},{"Title":"Ruby-Doc Docbar","Url":"http:\/\/www.ruby-doc.org\/docbar\/"},{"Title":"Status Report","Url":"http:\/\/www.ruby-doc.org\/stdlib\/status.html"}]},{"Title":"Ruby: Ruby mineral information and data.","Description":"A red, gem variety of Corundum. The red colour is caused by minor amounts of trivalent Cr replacing Al in the crystal structure. Pure Cr2O3 occurs in nature as the mineral <M ...","Url":"http:\/\/www.mindat.org\/min-3473.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4952668595489458&w=b55008d0,e8c4ddb4","DisplayUrl":"www.mindat.org\/min-3473.html","DateTime":"2010-02-28T21:43:01Z"},{"Title":"Ruby\/Ruby on Rails programming tutorials2 - Meshplex","Description":"Ruby for complete beginners: Ruby Introduction: What can I use RoR for? Reasons for choosing RoR over other popular programming languages such as php or asp.net .What makes Ruby so ...","Url":"http:\/\/www.meshplex.org\/wiki\/Ruby\/Ruby_on_Rails_programming_tutorials","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4741832947336861&w=2d9d5b96,9eaf0e4c","DisplayUrl":"www.meshplex.org\/wiki\/Ruby\/Ruby_on_Rails_programming_tutorials","DateTime":"2010-03-04T05:10:25Z"},{"Title":"Jack Ruby","Description":"Was Jack Ruby a mobster, a spook, or merely an emotional wannabe who expected public acclaim for killing Oswald?","Url":"http:\/\/mcadams.posc.mu.edu\/ruby.htm","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4935828028785085&w=a5cf0783,391d1a03","DisplayUrl":"mcadams.posc.mu.edu\/ruby.htm","DateTime":"2010-03-04T14:50:15Z"},{"Title":"Ruby-On-Rails","Description":"Ruby-On-Rails Developer's Journal ... Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments","Url":"http:\/\/ruby.sys-con.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4881479511180793&w=f0c3ddf5,73535976","DisplayUrl":"ruby.sys-con.com","DateTime":"2010-03-05T02:38:55Z"},{"Title":"The gemstone ruby","Description":"Ruby is distinguished and known by all for its fiery red color. Beside for its color, it is a most desirable gem due to its hardness, durability, luster, and rarity.","Url":"http:\/\/www.minerals.net\/gemstone\/gemstone\/ruby\/ruby.htm","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4621165840434460&w=ae21eda2,87c0c587","DisplayUrl":"www.minerals.net\/gemstone\/gemstone\/ruby\/ruby.htm","DateTime":"2010-03-05T02:53:14Z"},{"Title":"NetBeans IDE - Ruby and Ruby on Rails Development","Description":"NetBeans IDE - Integrated tools for Ruby and Ruby on Rails developers","Url":"http:\/\/netbeans.org\/features\/ruby\/index.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5027053135464027&w=d7848996,8be8650","DisplayUrl":"netbeans.org\/features\/ruby\/index.html","DateTime":"2010-03-04T03:37:22Z"},{"Title":"RubyForge: Ruby: Project Info","Description":"Tracker - Bugs ( 338 open \/ 809 total ) Bug Tracking System - Patches ( 69 open \/ 116 total ) Patch Tracking System - 1.9.1 showstoppers ( 0 open \/ 12 total )","Url":"http:\/\/rubyforge.org\/projects\/ruby\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4713537701086745&w=53c417ed,1ba0970c","DisplayUrl":"rubyforge.org\/projects\/ruby","DateTime":"2010-03-04T04:13:10Z"},{"Title":"Ruby - The Official Website | Coming Soon!","Description":"Ruby's Official Website ... Hey all, welcome to my official website. Here you find all my news, images, video clips & up-to-date information, the website is under construction so ...","Url":"http:\/\/rubymania.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5043382597191621&w=72b61cb5,7046900c","DisplayUrl":"rubymania.com","DateTime":"2010-03-04T17:42:03Z"},{"Title":"CSS3 Ruby Module","Description":"Abstract \"Ruby\" are short runs of text alongside the base text, typically used in East Asian documents to indicate pronunciation or to provide a short annotation.","Url":"http:\/\/www.w3.org\/TR\/css3-ruby\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4740681895184188&w=de16472f,c7ece477","DisplayUrl":"www.w3.org\/TR\/css3-ruby","DateTime":"2010-03-04T03:08:44Z"},{"Title":"Ruby Andrascik's Manotick Lifestyles","Description":"Sales representative in Manotick area. Recent sales, current listings, area information.","Url":"http:\/\/manoticklifestyles.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4985666828699639&w=6efb6d3f,50da2b69","DisplayUrl":"manoticklifestyles.com","DateTime":"2010-03-03T20:35:02Z"},{"Title":"Ruby","Description":"Abstract. The HyperText Markup Language (HTML) is a simple markup language used to create hypertext documents that are portable from one platform to another.","Url":"http:\/\/www.w3.org\/TR\/1999\/WD-ruby-19990924\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4820207509702663&w=8102eac9,23f9553","DisplayUrl":"www.w3.org\/TR\/1999\/WD-ruby-19990924","DateTime":"2010-03-05T07:32:24Z"},{"Title":"ruby - Wiktionary","Description":"This page was last modified on 10 February 2010, at 16:50. Text is available under the Creative Commons Attribution\/Share-Alike License; additional terms may apply.","Url":"http:\/\/en.wiktionary.org\/wiki\/ruby","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4826869002143668&w=81c2b50f,9ecab98e","DisplayUrl":"en.wiktionary.org\/wiki\/ruby","DateTime":"2010-03-04T22:57:01Z"}]}}}
1
+ HTTP/1.1 200 OK
2
+ Cache-Control: private
3
+ Content-Length: 14611
4
+ Content-Type: application/json; charset=utf-8
5
+ P3P: CP="NON UNI COM NAV STA LOC CURa DEVa PSAa PSDa OUR IND", policyref="http://privacy.msn.com/w3c/p3p.xml"
6
+ Date: Fri, 12 Mar 2010 19:09:43 GMT
7
+ Connection: keep-alive
8
+
9
+ {"SearchResponse":{"Version":"2.2","Query":{"SearchTerms":"ruby"},"Web":{"Total":30100000,"Offset":0,"Results":[{"Title":"Ruby Programming Language","Description":"Ruby is… A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is ...","Url":"http:\/\/www.ruby-lang.org\/en\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4627410724784104&w=22e021a8,16ea274d","DisplayUrl":"www.ruby-lang.org\/en","DateTime":"2010-03-09T19:16:20Z","DeepLinks":[{"Title":"Downloads","Url":"http:\/\/www.ruby-lang.org\/en\/downloads\/"},{"Title":"Documentation","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/"},{"Title":"About Ruby","Url":"http:\/\/www.ruby-lang.org\/en\/about\/"},{"Title":"Ruby in Twenty Minutes","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/quickstart\/"},{"Title":"Libraries","Url":"http:\/\/www.ruby-lang.org\/en\/libraries\/"},{"Title":"Ruby from Other Languages","Url":"http:\/\/www.ruby-lang.org\/en\/documentation\/ruby-from-other-languages\/"},{"Title":"Community","Url":"http:\/\/www.ruby-lang.org\/en\/community\/"},{"Title":"Ruby Core","Url":"http:\/\/www.ruby-lang.org\/en\/community\/ruby-core\/"},{"Title":"News","Url":"http:\/\/www.ruby-lang.org\/en\/news\/"},{"Title":"Issue Tracking","Url":"http:\/\/redmine.ruby-lang.org\/"},{"Title":"Weblogs","Url":"http:\/\/www.ruby-lang.org\/en\/community\/weblogs\/"},{"Title":"Mailing Lists","Url":"http:\/\/www.ruby-lang.org\/en\/community\/mailing-lists"},{"Title":"Security","Url":"http:\/\/www.ruby-lang.org\/en\/security\/"}]},{"Title":"Ruby - Wikipedia, the free encyclopedia","Description":"A ruby is a pink to blood-red gemstone, a variety of the mineral corundum (aluminium oxide). The red color is caused mainly by the presence of the element chromium.","Url":"http:\/\/en.wikipedia.org\/wiki\/Ruby","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5011840361236004&w=d83e0d4d,525d4fc8","DisplayUrl":"en.wikipedia.org\/wiki\/Ruby","DateTime":"2010-03-10T22:06:57Z","DeepLinks":[{"Title":"Main page","Url":"http:\/\/en.wikipedia.org\/wiki\/Main_Page"},{"Title":"Random article","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:Random"},{"Title":"Contents","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Contents"},{"Title":"Current events","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Current_events"},{"Title":"Featured content","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Featured_content"},{"Title":"Wikipedia:About","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:About"},{"Title":"Citation Needed","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Citation_needed"},{"Title":"Sapphire","Url":"http:\/\/en.wikipedia.org\/wiki\/Sapphire"},{"Title":"Diamond","Url":"http:\/\/en.wikipedia.org\/wiki\/Diamond"},{"Title":"Ruby disambiguation","Url":"http:\/\/en.wikipedia.org\/wiki\/ruby_(disambiguation)"},{"Title":"Pakistan","Url":"http:\/\/en.wikipedia.org\/wiki\/Pakistan"},{"Title":"Birthstone","Url":"http:\/\/en.wikipedia.org\/wiki\/Birthstone"},{"Title":"Community portal","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Community_portal"}]},{"Title":"Ruby - The Inspirational Weight Loss Journey on the Style Network ...","Description":"Inspirational weight loss and weight loss exercises from the show Ruby on the Style Network","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/ruby\/index.jsp","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5041767691585919&w=b4c43136,a50b93df","DisplayUrl":"www.mystyle.com\/mystyle\/shows\/ruby\/index.jsp","DateTime":"2010-03-09T20:20:45Z","DeepLinks":[{"Title":"Fashion DUI","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=bae9c59a-3236-426d-8eb6-33db1a459c31"},{"Title":"Top Steals of the Week","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=a02cc651-c811-4148-900a-fff42c858eb5"},{"Title":"Weight Loss Message Boards","Url":"http:\/\/www.mystyle.com\/mystyle\/community\/forums\/index.jsp"},{"Title":"Clean House Before & After","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=49b46faf-a336-4645-8d2b-e325a6d5e3a2"},{"Title":"Clean House","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/cleanhouse\/index.jsp"},{"Title":"Dress My Nest Before & After","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=9a4f89fc-e947-401b-ab9f-62f918b341a3"},{"Title":"Style Shout-Out","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/gallery.jsp?galleryUUID=cee27be1-f8f4-44e8-a3b5-87da66c1412d"},{"Title":"Healthy Weight Loss","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/ruby\/gettinghealthy\/index.jsp"},{"Title":"Giuliana & Bill","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/giulianaandbill\/index.jsp"},{"Title":"Whose Wedding Is It Anyway?","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/whosewedding\/index.jsp"},{"Title":"How Do I Look?","Url":"http:\/\/www.mystyle.com\/mystyle\/shows\/howdoilook\/index.jsp"},{"Title":"Photo Galleries","Url":"http:\/\/www.mystyle.com\/mystyle\/photos\/index.jsp"},{"Title":"mystyle Quiz","Url":"http:\/\/www.mystyle.com\/mystyle\/games\/index.jsp?game=mystylequiz&navSection=fashion,beauty"}]},{"Title":"Ruby (programming language) - Wikipedia, the free encyclopedia","Description":"Ruby is a dynamic, reflective, general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features.","Url":"http:\/\/en.wikipedia.org\/wiki\/Ruby_(programming_language)","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5003684217948675&w=292b7212,ea3818f","DisplayUrl":"en.wikipedia.org\/wiki\/Ruby_(programming_language)","DateTime":"2010-03-10T13:31:33Z","DeepLinks":[{"Title":"Main page","Url":"http:\/\/en.wikipedia.org\/wiki\/Main_Page"},{"Title":"Random article","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:Random"},{"Title":"Current events","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Current_events"},{"Title":"Contents","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Contents"},{"Title":"Featured content","Url":"http:\/\/en.wikipedia.org\/wiki\/Portal:Featured_content"},{"Title":"About Wikipedia","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:About"},{"Title":"Japan","Url":"http:\/\/en.wikipedia.org\/wiki\/Japan"},{"Title":"Recent changes","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:RecentChanges"},{"Title":"Community portal","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Community_portal"},{"Title":"Contact Wikipedia","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Contact_us"},{"Title":"Upload file","Url":"http:\/\/en.wikipedia.org\/wiki\/Wikipedia:Upload"},{"Title":"Special pages","Url":"http:\/\/en.wikipedia.org\/wiki\/Special:SpecialPages"},{"Title":"Microsoft Windows","Url":"http:\/\/en.wikipedia.org\/wiki\/Microsoft_Windows"}]},{"Title":"Ruby - english","Description":"Ruby Which colour would you spontaneously associate with love and vivacity, passion and power? It's obvious, isn't it? Red. Red is the colour of love.","Url":"http:\/\/www.gemstone.org\/gem-by-gem\/english\/ruby.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4700979220253208&w=42f4604f,9d2be2bd","DisplayUrl":"www.gemstone.org\/gem-by-gem\/english\/ruby.html","DateTime":"2010-03-09T18:26:13Z"},{"Title":"Ruby Meetup Groups - Ruby Meetups","Description":"Helps groups of people with shared interests plan meetings and form offline clubs in local communities around the world about Ruby","Url":"http:\/\/ruby.meetup.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=795317372013&w=be93e7f7,a3625f80","DisplayUrl":"ruby.meetup.com","DateTime":"2010-03-10T22:14:06Z"},{"Title":"Ruby (1992)","Description":"Directed by John Mackenzie. With Danny Aiello, Sherilyn Fenn, Tobin Bell. Visit IMDb for Photos, Showtimes, Cast, Crew, Reviews, Plot Summary, Comments, Discussions, Taglines ...","Url":"http:\/\/www.imdb.com\/title\/tt0105291\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4821474523415776&w=f5de2d85,acb8c620","DisplayUrl":"www.imdb.com\/title\/tt0105291","DateTime":"2010-03-06T18:22:37Z"},{"Title":"[Ruby-Doc.org: Documenting the Ruby Language]","Description":"Ruby documentation project: links and downloads of programming information, on many aspects of Ruby.","Url":"http:\/\/www.ruby-doc.org\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4998165185627177&w=ae362e11,4f5709ff","DisplayUrl":"www.ruby-doc.org","DateTime":"2010-03-10T18:53:40Z","DeepLinks":[{"Title":"Standard API","Url":"http:\/\/www.ruby-doc.org\/stdlib\/"},{"Title":"Programming Ruby","Url":"http:\/\/www.ruby-doc.org\/docs\/ProgrammingRuby\/"},{"Title":"Files","Url":"http:\/\/www.ruby-doc.org\/core"},{"Title":"Getting Started","Url":"http:\/\/www.ruby-doc.org\/gettingstarted\/index.html"},{"Title":"Additional Documents","Url":"http:\/\/www.ruby-doc.org\/docs"},{"Title":"This","Url":"http:\/\/www.ruby-doc.org\/documentation-guidelines.html"},{"Title":"Standard Library","Url":"http:\/\/spec.ruby-doc.org\/wiki\/Ruby_Standard_Library"},{"Title":"Methods","Url":"http:\/\/www.ruby-doc.org\/core-1.8.7\/index.html"},{"Title":"Downloads","Url":"http:\/\/www.ruby-doc.org\/downloads\/"},{"Title":"Why Ruby","Url":"http:\/\/www.ruby-doc.org\/whyruby"},{"Title":"Ruby Spec: Core","Url":"http:\/\/spec.ruby-doc.org\/wiki\/Ruby_Core"},{"Title":"Ruby-Doc Docbar","Url":"http:\/\/www.ruby-doc.org\/docbar\/"},{"Title":"Status Report","Url":"http:\/\/www.ruby-doc.org\/stdlib\/status.html"}]},{"Title":"Ruby: Ruby mineral information and data.","Description":"A red, gem variety of corundum. The red colour is caused by minor amounts of trivalent Cr replacing Al in the crystal structure. In traditional gemmological terms, ruby has to ...","Url":"http:\/\/www.mindat.org\/min-3473.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4952668598504110&w=7eb11392,3bc454a2","DisplayUrl":"www.mindat.org\/min-3473.html","DateTime":"2010-03-11T00:58:45Z"},{"Title":"Ruby\/Ruby on Rails programming tutorials2 - Meshplex","Description":"Ruby for complete beginners: Ruby Introduction: What can I use RoR for? Reasons for choosing RoR over other popular programming languages such as php or asp.net .What makes Ruby so ...","Url":"http:\/\/www.meshplex.org\/wiki\/Ruby\/Ruby_on_Rails_programming_tutorials","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4741832949237409&w=a5ed9122,f1e25a41","DisplayUrl":"www.meshplex.org\/wiki\/Ruby\/Ruby_on_Rails_programming_tutorials","DateTime":"2010-03-10T06:57:50Z"},{"Title":"Jack Ruby","Description":"Was Jack Ruby a mobster, a spook, or merely an emotional wannabe who expected public acclaim for killing Oswald?","Url":"http:\/\/mcadams.posc.mu.edu\/ruby.htm","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4935828030292414&w=ff2150fb,c0c5d1af","DisplayUrl":"mcadams.posc.mu.edu\/ruby.htm","DateTime":"2010-03-10T16:37:40Z"},{"Title":"The gemstone ruby","Description":"Ruby is distinguished and known by all for its fiery red color. Beside for its color, it is a most desirable gem due to its hardness, durability, luster, and rarity.","Url":"http:\/\/www.minerals.net\/gemstone\/gemstone\/ruby\/ruby.htm","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4621165842138411&w=c02d2fc0,aea0c6c4","DisplayUrl":"www.minerals.net\/gemstone\/gemstone\/ruby\/ruby.htm","DateTime":"2010-03-11T04:33:29Z"},{"Title":"Ruby-On-Rails","Description":"Ruby-On-Rails Developer's Journal ... Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments","Url":"http:\/\/ruby.sys-con.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4881479512884746&w=384ff0b1,90c41b9a","DisplayUrl":"ruby.sys-con.com","DateTime":"2010-03-11T04:33:29Z"},{"Title":"NetBeans IDE - Ruby and Ruby on Rails Development","Description":"NetBeans IDE - Integrated tools for Ruby and Ruby on Rails developers","Url":"http:\/\/netbeans.org\/features\/ruby\/index.html","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5027053137167976&w=94d0be29,34722a74","DisplayUrl":"netbeans.org\/features\/ruby\/index.html","DateTime":"2010-03-10T05:39:06Z"},{"Title":"RubyForge: Ruby: Project Info","Description":"Tracker - Bugs ( 338 open \/ 809 total ) Bug Tracking System - Patches ( 69 open \/ 116 total ) Patch Tracking System - 1.9.1 showstoppers ( 0 open \/ 12 total )","Url":"http:\/\/rubyforge.org\/projects\/ruby\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4713537702790687&w=9c421a7a,14609206","DisplayUrl":"rubyforge.org\/projects\/ruby","DateTime":"2010-03-10T06:22:03Z"},{"Title":"Ruby - The Official Website | Coming Soon!","Description":"Ruby's Official Website ... Hey all, welcome to my official website. Here you find all my news, images, video clips & up-to-date information, the website is under construction so ...","Url":"http:\/\/rubymania.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=5043382599026615&w=aae98c0d,7b09c193","DisplayUrl":"rubymania.com","DateTime":"2010-03-10T19:50:56Z"},{"Title":"CSS3 Ruby Module","Description":"Abstract \"Ruby\" are short runs of text alongside the base text, typically used in East Asian documents to indicate pronunciation or to provide a short annotation.","Url":"http:\/\/www.w3.org\/TR\/css3-ruby\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4740681896888148&w=ef0223a0,4db7bc7f","DisplayUrl":"www.w3.org\/TR\/css3-ruby","DateTime":"2010-03-10T05:10:28Z"},{"Title":"Ruby Andrascik's Manotick Lifestyles","Description":"Sales representative in Manotick area. Recent sales, current listings, area information.","Url":"http:\/\/manoticklifestyles.com\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4985666830403560&w=bcb823d9,31408de6","DisplayUrl":"manoticklifestyles.com","DateTime":"2010-03-09T22:36:46Z"},{"Title":"Ruby","Description":"Abstract. The HyperText Markup Language (HTML) is a simple markup language used to create hypertext documents that are portable from one platform to another.","Url":"http:\/\/www.w3.org\/TR\/1999\/WD-ruby-19990924\/","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4820207511406597&w=8ab21896,f1b29660","DisplayUrl":"www.w3.org\/TR\/1999\/WD-ruby-19990924","DateTime":"2010-03-11T09:19:49Z"},{"Title":"ruby - Wiktionary","Description":"This page was last modified on 10 February 2010, at 16:50. Text is available under the Creative Commons Attribution\/Share-Alike License; additional terms may apply.","Url":"http:\/\/en.wiktionary.org\/wiki\/ruby","CacheUrl":"http:\/\/cc.bingj.com\/cache.aspx?q=ruby&d=4826869003847603&w=f59c5f68,3484f0aa","DisplayUrl":"en.wiktionary.org\/wiki\/ruby","DateTime":"2010-03-11T00:44:26Z"}]}}}
data/spec/spec_helper.rb CHANGED
@@ -7,6 +7,7 @@ require 'fakeweb'
7
7
  require 'binged'
8
8
 
9
9
  FakeWeb.allow_net_connect = false
10
+ Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].each {|f| require f}
10
11
 
11
12
  Spec::Runner.configure do |config|
12
13
 
@@ -23,7 +24,7 @@ def fixture_file(filename)
23
24
  end
24
25
 
25
26
  def stub_get(url, filename, options={})
26
- fakeweb_options = {:body => fixture_file(filename)}.merge(options)
27
+ fakeweb_options = {:response => fixture_file(filename)}.merge(options)
27
28
  FakeWeb.register_uri(:get, url, fakeweb_options)
28
29
  end
29
30
 
@@ -0,0 +1,8 @@
1
+ share_as :AnyFilter do
2
+
3
+ it "should be able to specify a site to limit searches to" do
4
+ @search.from_site('adventuresincoding.com')
5
+ @search.query[:Query].should include('site:adventuresincoding.com')
6
+ end
7
+
8
+ end
@@ -0,0 +1,13 @@
1
+ share_as :AnyPageable do
2
+
3
+ it "should be able to specify the number of results per page" do
4
+ @search.per_page(10)
5
+ @search.query["#{@search.source.to_s.capitalize}.Count"].should == 10
6
+ end
7
+
8
+ it "should be able to specify the page number" do
9
+ @search.page(3)
10
+ @search.query["#{@search.source.to_s.capitalize}.Offset"].should == 20 * 2
11
+ end
12
+
13
+ end
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
- - 1
8
- - 1
9
- version: 0.1.1
7
+ - 2
8
+ - 0
9
+ version: 0.2.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Kevin Faustino
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-03-08 00:00:00 -05:00
17
+ date: 2010-03-12 00:00:00 -05:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -108,12 +108,17 @@ files:
108
108
  - lib/binged/hashie_extensions.rb
109
109
  - lib/binged/search.rb
110
110
  - lib/binged/search/base.rb
111
+ - lib/binged/search/image.rb
111
112
  - lib/binged/search/web.rb
113
+ - spec/binged/search/image_spec.rb
112
114
  - spec/binged/search/web_spec.rb
113
115
  - spec/binged_spec.rb
116
+ - spec/fixtures/images.json
114
117
  - spec/fixtures/web.json
115
118
  - spec/spec.opts
116
119
  - spec/spec_helper.rb
120
+ - spec/support/shared_examples/filter.rb
121
+ - spec/support/shared_examples/pageable.rb
117
122
  has_rdoc: true
118
123
  homepage: http://github.com/kfaustino/binged
119
124
  licenses: []
@@ -145,6 +150,9 @@ signing_key:
145
150
  specification_version: 3
146
151
  summary: A wrapper for the bing api
147
152
  test_files:
153
+ - spec/binged/search/image_spec.rb
148
154
  - spec/binged/search/web_spec.rb
149
155
  - spec/binged_spec.rb
150
156
  - spec/spec_helper.rb
157
+ - spec/support/shared_examples/filter.rb
158
+ - spec/support/shared_examples/pageable.rb