181号Information

(!)
自宅設置サーバーのHDDがトんじゃったので,現在復旧作業中です...
Diary>27[28]29
CONTENTS

じゆうちょう

28 ruby+https+basic認証+分割ダウンロード スクリプト 2009-07-22 14:39:35
https + Basic認証先の相手に対して連続ダウンロードしたいコトがありまして. irvineだとうまくいかないのでruby書いてみた
さてさて.HTTPSで繋ぐ方法は適当にぐぐるとして, 相手先ファイルサイズがでかすぎてメモリが確保できないとかいうエラーが出て とまっちゃうのです.
Net::HTTPRequest.body_streamとかもあるみたいなんですけど うまくいかないので,httpヘッダの指定で何とかしてみることにします.
といっても難しい事はなくて,まずヘッダからファイルサイズを取得して
 request = Net::HTTP::Head.new(ファイルパス);
 result  = http.request(request);
 filesize= result["Content-Length"].to_i; # ファイルサイズ(bytes)
それを元に取得したい部分を決めて,
 request["Range"]= "bytes=" + 
                   rangeStart.to_s + "-" + rangeEnd.to_s;
 result= http.request(request);
としてちょろちょろファイルに書き込めばOK.
と思ってたんだけど...
シェルで
wget --http-user=ユーザー名 --http-passwd=パスワード \
     --no-check-certificate あどれす
とすればよかった.げしょげしょ.
 
Diary>27[28]29