我想使用VBA抓取google搜索结果右侧数据。我能够抓住结果但不是我需要的确切结果。下面是我用红色标记我需要刮的屏幕截图。
我在VBA中尝试使用以下代码,但始终存在运行时错误。如何解析每个部分并获取span标记内的值。
VBA:
Set html = CreateObject("htmlfile")
html.body.innerHTML = XMLHTTP.ResponseText
Set objResultDiv = html.getElementById("rhs_block")
Set objH3 = objResultDiv.getElementsByTagName("div")(7).getElementsByTagName("a")(2).getElementsByTagName("span")(0).innerHTML
Cells(2, 2) = objH3
对于上面的代码我现在得到运行时错误91。如何解决此问题并解析以获取特定的span标记值。
答案 0 :(得分:0)
您可能需要抓取整个文本,然后解析出您的特定数据点。
由于您没有发布网址,这只是猜测。 。 。
Sub Test() Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.Navigate "http://www.marketwatch.com/investing/stock/aapl/analystestimates" ' should work for any URL
Do Until .ReadyState = 4: DoEvents: Loop
x = .document.body.innertext
y = InStr(1, x, "Average Target Price:")
Z = Mid(x, y, 6)
Range("A1").Value = Trim(Z)
.Quit
End With
End Sub