0

我正在使用以下代码下载网页并将其保存到文件中:

function download(sFileURL, sLocation, async)
  download = false
  set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
  objXMLHTTP.open "GET", sFileURL, async
  on error resume next
  objXMLHTTP.send()
  if err.number = 0 then
    do until objXMLHTTP.Status = 200
      wscript.echo objXMLHTTP.Status
      wcript.sleep(200)
    loop
    if objXMLHTTP.Status = 200 Then
      set objADOStream = CreateObject("ADODB.Stream")
      objADOStream.Open
      objADOStream.Type = 1
      objADOStream.Write objXMLHTTP.ResponseBody
      objADOStream.Position = 0    
      set objFSO = Createobject("Scripting.FileSystemObject")
      If objFSO.Fileexists(sLocation) Then objFSO.DeleteFile sLocation
      Set objFSO = Nothing
      objADOStream.SaveToFile sLocation
      objADOStream.Close
      objXMLHTTP.Close
      set objADOStream = Nothing
      download = true
    end if
  else
    download = false
  end if
  set objXMLHTTP = Nothing
end function

一旦通过它,我就会调用它(url,filename1,false)

然后我睡了 x 秒

并用 (url, filename2, false) 再次调用它

我可以看到磁盘上两个文件的属性之间的 x 延迟,但第二个文件与下载的第一个文件完全相同。我肯定知道这一点,因为我有一个服务器计时器。

是否发生了某种奇怪的缓存,或者我的下载功能有问题?公平地说,我确实从互联网上复制了它......

4

0 回答 0