我有一个 ruby 脚本,它可以保存来自各个站点的网页,我如何确保它检查服务器是否可以发送 gzip 压缩文件并在可用时保存它们......任何帮助都会很棒!
Vic
问问题
2015 次
3 回答
5
可以将自定义标头作为哈希发送...
custom_request = Net::HTTP::Get.new(url.path, {"Accept-Encoding" => "gzip"})
然后,您可以通过将响应对象定义为来检查响应:
response = Net::HTTP.new(url.host, url.port).start do |http|
http.request(custom_request)
end
p [response['Content-Encoding']
感谢那些回答的人...
于 2009-04-13T18:57:30.013 回答
1
您需要在请求中发送以下标头:
Accept-Encoding: gzip,deflate
但是,我仍在阅读如何编写 ruby 代码并且不知道如何在 net/http 库中执行标头语法(我假设您正在使用它来发出请求)
编辑:实际上,根据ruby 文档,如果您不指定其他“接受编码”标头,则此标头是发送的默认标头的一部分。
再说一次,就像我在原来的答案中所说的那样,我仍然只是在阅读这个主题,所以我可能是错的。
于 2009-04-04T19:47:46.500 回答
0
对于抓取网页并使用它们进行处理,ScrubyIt非常棒。
于 2009-04-05T04:23:06.743 回答