惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
小众软件
小众软件
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
V
V2EX
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - Franky
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog
Jina AI
Jina AI
博客园 - 聂微东
S
SegmentFault 最新的问题
量子位
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园_首页

博客园 - 黑色泥土

FSO操作指南 ASP生成静态页面的方法 Javascript操作Excel总结 移除节点时候IE与FireFox的不同 Javascript的IE和Firefox兼容性汇编 添加数据要顺着来,删除数据要反着去。 无法打开本地安全策略的症状及解决 CSS中渐变背景的使用以及注意事项 指定CodePage类型,强制解决数据库查询乱码问题 IE中子栏目使用float属性后背景不能正常显示原因及解决 使用UL 列表结构建立横向导航栏需要注意的问题 页面刷新方法汇总 制作一个漂亮的提示框 网页CSS样式表设计十条技巧 IE与FireFox对CSS支持不足问题汇总之二 IE与Firefox的CSS兼容大全 浩方平台暗藏木马! IE与FireFox对CSS支持不足问题汇总之一 FireFox网页布局时候内容需自动换行时float属性不起作用
将网站全部下载下来的ASP代码
黑色泥土 · 2008-04-20 · via 博客园 - 黑色泥土

Description:

A script that downloads files from a remote web server to a local mirror site (you can use it for just downloading files to anywhere you want...)

Script:

'*************************************************************************************************
' Download.vbs - Download files from the internet to local mirror servers
' Created by Martin77 (version 1.0)
'*************************************************************************************************
Option Explicit
On Error Resume Next

Dim LogPath, SourceURL, TargetPath, Files2Download

'*************************************************************************************************
'            Edit these variables only!
'*************************************************************************************************
            'Where to save the log file:
            LogPath = "C:/Inetpub/wwwroot/Logs/"

            'From where download the files:
            SourceURL = "http://www.somesite.com/rootfolder/otherfolder/"
                            
            'Where to save the downloaded files:
            TargetPath = "C:/Inetpub/wwwroot/LocalSite/"
                            
            'What files to download (separated by ','):
            Files2Download = "file1.txt,file2.exe,file3.zip"

'*************************************************************************************************
    Main 'Run the main process
'*************************************************************************************************
'Main process:
Sub Main
    Dim strOutputFile, strErrCode, strOutPut, i
    Dim objArgs, objFSO, objOutputFile, objHTTP
    Dim arrFiles2Download
    Const ForReading = 1, ForWriting = 2, ForAppending = 8
    arrFiles2Download = Split(Files2Download,",")
    strOutputFile = LogPath & "Download-Log-" & Replace(Date,"/","-") & ".log"

    'Parse Arguments (from App. Center URL Health Monitor):
    Set objArgs = Wscript.Arguments
    For i = 0 To objArgs.count - 1
        strErrCode = strErrCode & objArgs(i) & " "
    Next
    Set objArgs = Nothing
    strOutPut = Now & " - " & strErrCode

    'Download files:
    For i = 0 To Ubound(arrFiles2Download)
        If SaveWebBinary(SourceURL & arrFiles2Download(i), TargetPath & arrFiles2Download(i)) Then
            'Download OK:
            strOutPut = strOutPut & vbCrLf & Now & " - Downloaded file: " & arrFiles2Download(i)
        Else
            'Download Error
            strOutPut = strOutPut & vbCrLf & Now & " - Error downloading file: " & arrFiles2Download(i)
        End If
    Next
    'Write LogFile:
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objOutputFile = objFSO.OpenTextFile(strOutputFile, ForAppending, True)
    objOutputFile.Write "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-" & vbCrLf
    objOutputFile.Write strOutPut & vbCrLf
    objOutputFile.Write "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-" & vbCrLf
    objOutputFile.Close
    Set objFSO = Nothing
    Set objOutputFile = Nothing
End Sub
'*************************************************************************************************
'Download the file from %strUrl% to %strFile% - returns True / False
Function SaveWebBinary(strUrl, strFile) 'As Boolean
    Const adTypeBinary = 1
    Const adSaveCreateOverWrite = 2
    Const ForWriting = 2
    Dim web, varByteArray, strData, strBuffer, lngCounter, ado
    Err.Clear
    Set web = Nothing
    Set web = CreateObject("WinHttp.WinHttpRequest.5.1")
    If web Is Nothing Then Set web = CreateObject("WinHttp.WinHttpRequest")
    If web Is Nothing Then Set web = CreateObject("MSXML2.ServerXMLHTTP")
    If web Is Nothing Then Set web = CreateObject("Microsoft.XMLHTTP")
    web.Open "GET", strURL, False
    web.Send
    If Err.Number <> 0 Then
        SaveWebBinary = False
        Set web = Nothing
        Exit Function
    End If
    If web.Status <> "200" Then
        SaveWebBinary = False
        Set web = Nothing
        Exit Function
    End If
    varByteArray = web.ResponseBody
    Set web = Nothing
    
    'Save the file
    On Error Resume Next
    Set ado = Nothing
    Set ado = CreateObject("ADODB.Stream")
    If ado Is Nothing Then
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set ts = fs.OpenTextFile(strFile, ForWriting, True)
        strData = ""
        strBuffer = ""
        For lngCounter = 0 to UBound(varByteArray)
            ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1)))
        Next
        ts.Close
    Else
        ado.Type = adTypeBinary
        ado.Open
        ado.Write varByteArray
        ado.SaveToFile strFile, adSaveCreateOverWrite
        ado.Close
    End If
    SaveWebBinary = True
End Function
'*************************************************************************************************

Keywords: Dwonload, Savewebbinary, Winhttp.winhttprequest.5.1, Winhttp.winhttprequest, Msxml2.serverxmlhttp, Microsoft.xmlhttp