1

複数の Web ページを開いて、情報 (単なるテキスト) をそれぞれの新しいファイルに保存する必要があります。私は VBScript の経験がまったくありません。しかし、私は何日も探していましたが、これまでに集めたものは次のとおりです。

function download(sFileURL, sLocation, async)
  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
    set objADOStream = Nothing
    download = true
   end if
 else
   download = false
 end if
   set objXMLHTTP = Nothing
 end function

 if download("http://books.google.com/books/feeds/volumes?q=isbn", "test.txt", false) then
   wscript.echo "download ok"
 else
   wscript.echo "download did not work"
 end if

どうすれば変更できますか

if download("http://books.google.com/books/feeds/volumes?q=isbn", "test.txt", false)

テキスト ファイルのリストから読み取り、test00、test01、test02、... として保存します。

前もって感謝します

4

1 に答える 1

2

これは、必要なことを行う最も単純なコードです。

Set objFSO = CreateObject("Scripting.FileSystemObject")
ListFile = "D:\list.txt"
Set objFile = objFSO.OpenTextFile(ListFile)
FileNumber = 0
Do Until objFile.AtEndOfStream
    URLFromList = objFile.ReadLine
    FileNumber = FileNumber + 1
    if download(URLFromList, "test" & FileNumber & ".txt", false) then
        wscript.echo "download ok for " & URLFromList
    else
        wscript.echo "download did not work for " & URLFromList
    end if
Loop
objFile.Close
objFSO = Nothing
于 2013-02-04T16:24:58.820 に答える