読者です 読者をやめる 読者になる 読者になる

WSH の VBScript で HTTP の Response Header を取得

WSHVBScript で HTTP の Response Header を取得するスクリプトを書いてみました。
エラー処理は最低限です。

sUrl = Trim(Wscript.Arguments(0))
sCap = Trim(Wscript.Arguments(1))
sSts = "-"
sLM = "-"
iRet = 0
Set oHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0") 
oHttp.Open "GET", sUrl, False
oHttp.setTimeouts 30000, 60000, 30000, 30000
On Error Resume Next
oHttp.Send
iRet = Err.Number
If iRet = 0 Then
    sSts = oHttp.Status
    If sSts = "200" Then
        sLM = oHttp.getResponseHeader("Last-Modified")
    End If
End If
On Error Goto 0
Set oHttp = Nothing
sCm   = ""","""
WScript.Echo """" & Now & sCm & sCap & sCm & sSts & sCm & sLM & sCm & sUrl & sCm & iRet & """"

下のようにコマンドライン引数に URL とその説明を入れます。

cscript //Nologo .\getLM.vbs "http://www.hatena.ne.jp/images/portal/logo-portal-top.png" "ロゴ" >> .\http.csv