Web scraping 如何使用VBScript将网站数据保存到文件?

Web scraping 如何使用VBScript将网站数据保存到文件?,web-scraping,vbscript,Web Scraping,Vbscript,在下面的代码中,如何将文本保存到文本文件(例如text.txt)而不是当前的MsgBox myURL = "http://URL.com" Set oXMLHttp = CreateObject("MSXML2.XMLHTTP") Set ohtmlFile = CreateObject("htmlfile") oXMLHttp.Open "GET", myURL, False oXMLHttp.send If oXMLHttp.Status = 200 Then ohtmlFile.W

在下面的代码中,如何将文本保存到文本文件(例如text.txt)而不是当前的
MsgBox

myURL = "http://URL.com"

Set oXMLHttp = CreateObject("MSXML2.XMLHTTP")
Set ohtmlFile = CreateObject("htmlfile")

oXMLHttp.Open "GET", myURL, False
oXMLHttp.send

If oXMLHttp.Status = 200 Then

ohtmlFile.Write oXMLHttp.responseText
ohtmlFile.Close

Set oTable = ohtmlFile.getElementsByTagName("table")
For Each oTab In oTable
    MsgBox oTab.Innertext
Next
End If

WScript.Quit
请帮帮我


谢谢

您可以使用FileSystemObject的

您可以使用其他对象在代码顶部创建FileSystemObject:

Set objFSO = CreateObject("Scripting.FileSystemObject")
并添加以下常量:

Const ForReading = 1, ForWriting = 2, ForAppending = 8
如果要将所有内容附加到同一文件中,可以在循环外部创建并打开该文件:

sFileName = "c:\text.txt"
Set objFile = objFSO.OpenTextFile(sFileName, ForAppending, True)
For Each oTab In oTable
    objFile.WriteLine oTab.Innertext
Next
objFile.Close
Dim iTableCounter
iTableCounter = 0

For Each oTab In oTable

    iTableCounter = iTableCounter + 1
    sFileName = "c:\table_" & iTableCounter & ".txt" ' create a dynamic file name using table name perhaps

    Set objFile = objFSO.OpenTextFile(sFileName, ForWriting, True)
    objFile.Write oTab.Innertext
    objFile.Close

Next
否则,您可以在循环中创建多个文件:

sFileName = "c:\text.txt"
Set objFile = objFSO.OpenTextFile(sFileName, ForAppending, True)
For Each oTab In oTable
    objFile.WriteLine oTab.Innertext
Next
objFile.Close
Dim iTableCounter
iTableCounter = 0

For Each oTab In oTable

    iTableCounter = iTableCounter + 1
    sFileName = "c:\table_" & iTableCounter & ".txt" ' create a dynamic file name using table name perhaps

    Set objFile = objFSO.OpenTextFile(sFileName, ForWriting, True)
    objFile.Write oTab.Innertext
    objFile.Close

Next

成功了!有没有办法保存在同一文件的不同行上?如果可能的话,你能把修改后的代码发给我吗?非常感谢你!是的,只需要使用
WriteLine
而不是
Write
。我已经更新了答案。如果有机会,请在答案左侧使用灰色复选标记将问题标记为已回答!这真的解决了我的问题。我已经把问题标记为已回答。我非常感谢你的帮助!