【发布时间】:2018-05-24 15:23:59
【问题描述】:
我正在尝试在此页面的技术摘要小部件中获取买入、卖出、中性的票数:https://in.tradingview.com/symbols/NSE-TCS/
元素就是这些
<span class="tv-widget-technicals__counter-number redColor">2</span>
<span class="tv-widget-technicals__counter-number neutralColor">10</span>
<span class="tv-widget-technicals__counter-number brandColor">8</span>
我尝试了不同的方法,但我不知道如何访问这些元素。我什至尝试遍历所有 span 元素,但没有出现在列表中。
我已经添加了到目前为止我尝试过的内容,请告诉我如何解决这个问题。
Sub Test_Macro()
Dim i As Long, j As Long, fD As Long
Dim symBol As String, urL As String, hdoc
Dim oHtml As HTMLDocument
Dim oElement As Object
Dim dados
With DATA
fD = .Range("A" & .Rows.Count).End(xlUp).Row
Set oHtml = New HTMLDocument
With CreateObject("WINHTTP.WinHTTPRequest.5.1")
For i = 2 To fD
symBol = Trim(Replace(Replace(DATA.Range("A" & i).Value, "-", "_"), "&", "_"))
urL = "https://in.tradingview.com/symbols/NSE-" & symBol
.Open "GET", urL, False
.send
oHtml.body.innerHTML = .responseText
Stop
Set dados = oHtml.getElementsByClassName("tv-site-widget ").Item(1).getElementsByTagName("span")
j = 1
For Each oElement In dados
DATA.Range("F" & j) = oElement.innerText
j = j + 1
'Debug.Print oElement.innerHTML
Next oElement
Stop
Next i
End With
End With
End Sub
【问题讨论】:
标签: vba excel getelementsbyclassname