我正在使用Typhoeus和Hydra,以便进行并行请求。我的最终目标是将typhoeus响应解析为机械化对象。
url = "http://example.com/"
hydra = Typhoeus::Hydra.new
agent = Mechanize.new
request = Typhoeus::Request.new(url, :method => :get, :proxy => "#{proxy_host}:#{proxy_port}")
request.on_complete do |response| #Typhoeus::response object
body = response.body
uri = request.parsed_uri
page = agent.parse(uri, response, body)
end
hydra.queue(request)
hydra.runagent.parse方法出现错误,因为它不能解析typhoeus响应对象
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/mechanize-2.5.1/lib/mechanize.rb:1165:in `parse': undefined method `[]' for #<Typhoeus::Response:0x00000012cd9da0> (NoMethodError)有没有什么方法可以将Typhoeus响应转换为Net::HTTPResponse对象?或者有没有其他方法可以让我把机械化和台风放在一起?这样,我就可以使用typhoeus进行并行请求,并使用机械化库来抓取数据。
发布于 2012-10-26 06:06:51
https://stackoverflow.com/questions/13005454
复制相似问题