]> gitweb.factorcode.org Git - factor.git/blob - misc/http-get.vbs
scryfall: make decks better, import from moxfield
[factor.git] / misc / http-get.vbs
1 on error resume next\r
2 \r
3 if WScript.Arguments.Count < 2 then\r
4     WScript.Echo "usage: http-get.vbs source-url dest-file"\r
5     WScript.Quit 1\r
6 else\r
7     source_url = WScript.Arguments.Item(0)\r
8     dest_filename = WScript.Arguments.Item(1)\r
9 \r
10     dim http, source_data\r
11     set http = CreateObject("WinHttp.WinHttpRequest.5.1")\r
12 \r
13     Err.Clear\r
14     http.Open "GET", source_url, false\r
15     http.Send\r
16 \r
17     if Err.Number = 0 then\r
18         if http.Status = 200 then\r
19             dim dest_stream\r
20             odd = "DOD"\r
21             set dest_stream = CreateObject("A"+odd+"B"+".Stream")\r
22 \r
23             Err.Clear\r
24             dest_stream.Type = 1 ' adTypeBinary\r
25             dest_stream.Open\r
26             dest_stream.Write http.ResponseBody\r
27             dest_stream.SaveToFile dest_filename, 2 ' adSaveCreateOverWrite\r
28             if Err.Number <> 0 then\r
29                 WScript.Echo "Error " + CStr(Err.Number) + " when writing " + dest_filename + ":"\r
30                 WScript.Echo Err.Description\r
31                 WScript.Quit 1\r
32             end if\r
33         else\r
34             WScript.Echo CStr(http.Status) + " " + http.StatusText + " when fetching " + source_url\r
35             WScript.Quit 1\r
36         end if\r
37     else\r
38         WScript.Echo "Error " + CStr(Err.Number) + " when fetching " + source_url + ":"\r
39         WScript.Echo Err.Description\r
40         WScript.Quit 1\r
41     end if\r
42 end if\r