首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >机械化和台风

机械化和台风
EN

Stack Overflow用户
提问于 2012-10-22 13:32:37
回答 1查看 920关注 0票数 0

我正在使用Typhoeus和Hydra,以便进行并行请求。我的最终目标是将typhoeus响应解析为机械化对象。

代码语言:javascript
复制
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.run

agent.parse方法出现错误,因为它不能解析typhoeus响应对象

代码语言:javascript
复制
/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进行并行请求,并使用机械化库来抓取数据。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-26 06:06:51

  1. 我试图从Typhoeus::Response创建一个Net::HTTPResponse(https://github.com/ruby/ruby/blob/trunk/lib/net/http/response.rb),但没有成功。调用初始化器很简单,但设置响应体或头部就不容易了。
  2. 我研究了机械化,看看是否可以将其更改为使用台风发出请求,但我认为现在不可能。Net/http是真正硬连接到机械化。我想到了一个机械化的台风适配器,那会很好的。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13005454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档