我正在尝试将yahoo.com的网页源代码下载到我的Excel工作表中。
我没有设法构建代码。我的代码(如下所述)是下载网页文字而非来源:
With ActiveSheet.QueryTables.Add(Connection:="URL;https://www.yahoo.com/?p=us" _
, Destination:=Range("$A$1"))
.Name = "?p=us"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
答案 0 :(得分:0)
使用Microsoft的XML功能
在VBA编辑器的工具/参考中激活 Microsoft XML,v3.0 (如果您在2010年及以上,则为6),然后按以下方式启动您的代码:
Dim oXML As New MSXML2.XMLHTTP
Dim xURL As String
Dim uTxt As String
xURL = "https://www.yahoo.com/?p=us"
oXML.Open "GET", xURL, False
oXML.setRequestHeader "Content-Type", "text/xml"
oXML.send
uTxt = oXML.responseText
Codesplit = Split(uTxt, Chr(13))
然后,您可以逐行将这些行写入工作表,或者更快地将拆分值提供给数组并一次性将其发送到工作表。
我用它来解析内存中的HTML并从网页下载我想要的数据。 HTH