タイトル通りです。
参考にさせていただいたのは↓
- エクセルVBAでHTTPリクエストをする最も簡単なプログラム
- Invoke-WebRequest (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn
今回はとりあえずUA情報が取りたかっただけなので、全てHEADメソッドを使用。
Excelの場合(1)
Sub onClick()
Dim httpReq As XMLHTTP60
Set httpReq = New XMLHTTP60
Dim uri As String
uri = "http://localhost:3000/"
Call httpReq.Open("HEAD", uri, False)
Call httpReq.Send
Do While httpReq.readyState < 4
DoEvents
Loop
Set httpReq = Nothing
End Sub
Excelの場合(2)
Sub onClick_2()
Dim winHttp As Object
Set winHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
Dim uri As String
uri = "http://localhost:3000/"
winHttp.Open "HEAD", uri
winHttp.Send
End Sub
powershellの場合
$uri = 'http://localhost:3000/'
$response = Invoke-WebRequest -Uri $uri -UseBasicParsing -Method HEAD
おわりに
頑張れば負荷テストなどに応用できるかも、と思いつつ、
そこまでの余力はなさそうなのでここまで。
業務からは外れるけどスクレイピングとかも出来たら楽しいかも……
VBAなら一度結構がっつり書いてたことがあるので、やるならVBAかなあ
powershellすらすら書けるようになりたい……