MacBSの日常生活的日記

DOSプロンプトでWebサイトにアクセス

DOSプロンプトからWebサイトのページをダウンロードする必要が
生じたので、ちょっと調べてみました。

linuxだと、wgetというコマンドがあるので、簡単なんですけどねぇ。
windows版のwgetもあるようですが、できれば標準機能の方が
余計な手間が省けますので、ここはVBScriptを用いることにしました。

検索してみると、クリップボードに入ったURLからダウンロードする
スクリプトが見つかりました。
http://blogs.wankuma.com/mutaguchi/archive/2006/12/23/53018.aspx

これでほぼ技術的には完璧です。
いやぁ、Windows周りのものは、Webに情報がいっぱいで、助かります。
Macだと、なかなかこういう具合にはいかないことが多いんですけどねぇ。

ただ、できればコマンドラインからURLを指定したいのと、エラー処理を
軽く加えて、こんな感じにしてみました。

Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

Set args = WScript.Arguments

If args.Count 2 Then
WScript.Quit -1
End If

‘ダウンロードフォルダ(最後に¥をつけないこと)
sDLFolder = args.item(0)

‘ダウンロード対象URL
sURL = args.item(1)

On Error Resume Next

sDest = sDLFolder & “\” & Mid(sURL,InStrRev(sURL,”/”)+1)
Set oHTTP = WScript.CreateObject(“MSXML2.ServerXMLHTTP”)

oHTTP.Open “GET”, sURL, False
oHTTP.Send
If Err.Number 0 Then
WScript.Quit -1
End If
Err.Clear

Set Stream = WScript.CreateObject(“Adodb.Stream”)
Stream.Type = adTypeBinary
Stream.Open
Stream.Write oHTTP.responseBody
Stream.Savetofile sDest, adSaveCreateOverWrite

WScript.Quit 0

上のソースを「url_dl.vbs」に保存したら、コマンドラインから以下のように
CallすればOKです。

wscript url_dl.vbs c:\download http://saramac.main.jp/blog/index.html

あまり一般性はない気もしますが、自分用メモ、ということで。(^^;

モバイルバージョンを終了