parsing富达股票报价页面

通过build立与相关富达页面的连接,我可以从富达获得股票和指数数据; 将结果写入工作表; 然后在表格上find我想要的结果。

我现在试图简化和避免使用IE和临时工作表页面 。 下面的代码,使用微软的XML,v6.0似乎下载了所有的相关信息,但我不知道如何处理事后,以便能够提取最后一个价格名称最后价格date/时间

我曾看过雅虎的财务和Google的财务,但他们没有我所感兴趣的所有指数。

下面的代码使我能够下载页面信息,但是我看到的“Get”返回的唯一组件是responseText (我已经分解并放在工作表上以供检查)和responseBody是一个responseText内容的字符代码数组。

也许我甚至不应该首先使用MS XML工具,但在我看来这应该是可能的。

感谢任何指针。


 Sub FIDOQuoteTester() 'Set Reference to Microsoft XML V6.0 Const sURLPart1 As String = "http://quotes.fidelity.com/webxpress/get_quote?QUOTE_TYPE=D&SID_VALUE_ID=" Const sURLPart3 As String = "&submit=Quote" Dim sURL As String Dim sSymbols As String '+ separated list Dim REQ As MSXML2.ServerXMLHTTP60 'using Server type as the other raises security problems Dim V As Variant, R As Range Dim S As String sSymbols = ".DJI+.SPX" sURL = sURLPart1 & sSymbols & sURLPart3 Set REQ = New ServerXMLHTTP60 REQ.Open "Get", sURL, False REQ.send S = REQ.responseText Stop 'putting string on worksheet for examination 'Need to split the string as it is too long for a cell. V = Split(S, vbLf) Set R = Range("a1").Resize(UBound(V) + 1, 1) With R .EntireColumn.Clear .Value = WorksheetFunction.Transpose(V) End With End Sub 

设置一个参考Microsoft HTML对象库。

然后 :

 '/ Adding response text to MSHTML Dim oHTML As New HTMLDocument Dim e '/ This is your element oHTML.body.innerHTML = "" oHTML.body.innerHTML = S '/ Set your responseText(HTML) here '/ Loop through all the elements For Each e In oHTML.all Debug.Print e.ID & "-->" & e.innerText Next