PDA

Показать полную графическую версию : [решено] Помогите подправить скрипт VBS


viyunov
04-05-2022, 15:11
так-как я в них не разбираюсь! но очень нужно! чтобы автоматом скачивал справочник бик в папку! https://www.cbr.ru/s/newbik
спасибо!


option explicit
Dim oXMLHTTP, WSH, FSO, objShell, oStream, html, index1, index2, TempFolder, ZipEd807, urlEd807, aErr, FilesInZip
const ExtractTo="C:\reestr\asvcheck\bik"

Set WSH = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Shell.Application")

TempFolder = WSH.ExpandEnvironmentStrings("%TEMP%")
ZipEd807 = FSO.BuildPath(ExtractTo, "ED807.zip")


Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.3.0")

oXMLHTTP.Open "GET", "https://www.cbr.ru/PSystem/system_p/", False
On Error Resume Next
oXMLHTTP.Send
aErr = Array(Err.Number, Err.Description)



If oXMLHTTP.Status = 200 Then
html = oXMLHTTP.responsetext
index1 = InStr(1,html,"Справочник БИК")

index1 = InStr(index1,html,"vfs/?id=")
index2 = InStr(index1,html," ")

urlEd807 = "https://cbr.ru/" & Mid(html,index1,index2-(index1+1))


oXMLHTTP.Open "GET", urlEd807, False
On Error Resume Next
oXMLHTTP.Send

aErr = Array(Err.Number, Err.Description)



FSO.DeleteFile(ZipEd807), true

If oXMLHTTP.Status = 200 Then
Set oStream = CreateObject("ADODB.Stream")

oStream.Type = 1
oStream.Open
oStream.Write oXMLHTTP.responseBody
oStream.SaveToFile ZipEd807
oStream.Close

If NOT FSO.FolderExists(ExtractTo) Then
FSO.CreateFolder(ExtractTo)
End If


FSO.DeleteFile(ExtractTo & "*_807_full.xml"), false

Set FilesInZip=objShell.NameSpace(ZipEd807).items
objShell.NameSpace(ExtractTo).CopyHere(FilesInZip)
FSO.DeleteFile(ZipEd807File)

Else
WScript.Echo "open failed:", aErr(0), aErr(1)
End If
Else
WScript.Echo "open failed:", aErr(0), aErr(1)
End If

DJ Mogarych
04-05-2022, 15:29
Powershell:

$tmpFile = "newbik.zip"
Invoke-WebRequest https://cbr.ru/s/newbik -OutFile "$env:temp\$tmpFile"
Expand-Archive "$env:temp\$tmpFile" "C:\reestr\asvcheck\bik"

Sham
04-05-2022, 16:59
ему надо распаковать xml-файл в папку ExtractTo

DJ Mogarych
04-05-2022, 20:15
Добавил выше.

viyunov
05-05-2022, 10:34
Жизнь прекрасна благодаря таким людям, как ты! спасибо большое!




© OSzone.net 2001-2012