Module: Rumba::Crawler

Defined in:
lib/rumba/crawler.rb,
lib/rumba/crawler/models.rb,
lib/rumba/crawler/parser.rb,
lib/rumba/crawler/version.rb,
lib/rumba/crawler/exceptions.rb

Defined Under Namespace

Modules: Exceptions, Models Classes: Parser

Constant Summary collapse

VERSION =
"0.1"

Class Method Summary collapse

Class Method Details

.get_data(url, query) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/rumba/crawler.rb', line 13

def self.get_data(url, query)
  EventMachine.run {
    http = EventMachine::HttpRequest.new(url).get query: query
    http.errback { raise Exceptions::BadResponse; EventMachine.stop }
    http.callback {
      if http.response_header.status >= 400
        raise Exceptions::BadResponse
      else
        yield(http.response)
      end
      EventMachine.stop
    }
  }
end