• 076月

    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

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

    Filed under: PC
    2009/06/07 8:36 pm | DOSプロンプトでWebサイトにアクセス はコメントを受け付けていません

Comments are closed.