class Chebyte::GeoLoc
Public Class Methods
new(api_key = 'dj0yJmk9aHhiV1JPeXpRZDRxJmQ9WVdrOVVWVnVOVWxtTldjbWNHbzlNQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD00Yw--', share_key = '92d98ea113c0246d6a91b3858ea3f16ea1e87338')
click to toggle source
# File lib/ruby-yql.rb, line 89 def initialize(api_key = 'dj0yJmk9aHhiV1JPeXpRZDRxJmQ9WVdrOVVWVnVOVWxtTldjbWNHbzlNQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD00Yw--', share_key = '92d98ea113c0246d6a91b3858ea3f16ea1e87338') @o = OauthUtil.new @o.consumer_key = api_key @o.consumer_secret = share_key @response = nil end
Public Instance Methods
escape(string)
click to toggle source
# File lib/ruby-yql.rb, line 96 def escape(string) CGI::escape(string) end
find(sql)
click to toggle source
# File lib/ruby-yql.rb, line 113 def find(sql) url = "http://query.yahooapis.com/v1/public/yql?q=#{escape(sql)}" parsed_url = URI.parse( sql ) Net::HTTP.start( parsed_url.host ) do | http | req = Net::HTTP::Get.new "#{ parsed_url.path }?#{ @o.sign(url).to_query_string }" @response = Location.new(Hpricot.XML(http.request(req).read_body)) end end
find_by_address(string)
click to toggle source
# File lib/ruby-yql.rb, line 100 def find_by_address(string) url = "http://query.yahooapis.com/v1/public/yql?q=SELECT%20centroid%20from%20geo.places%20WHERE%20text%3D'#{escape(string)}'&diagnostics=false" parsed_url = URI.parse( url ) begin Net::HTTP.start( parsed_url.host ) do | http | req = Net::HTTP::Get.new "#{ parsed_url.path }?#{ @o.sign(url).to_query_string }" @response = Location.new(Hpricot.XML(http.request(req).read_body)) end rescue "" end end