jquey 解析数据 (一)
用 CreateObject("htmlfile").parentWindow 亦可以解析数据,必须懂点HTML,这样可以知道标签或元素之间的上下,同级之间的关系,弄清他们之间的隶属关系,方可弄懂代码。下面来段源码。
<ul id="newslist"> <liclass="list"> <iclass="widget share-btn iconYCJ icon-sharing-ycjopacity-seven"></i> <sectionclass="nc-arc-wrap "> <time>今天09:43</time> <span> <divclass="nc-con"> <h4> <a 属性省略"> </a> </h4> 截至到2017年三季度,货币基金规模达到6.5万亿,相比二季度增长了1.25万亿,增 </div> <ulclass="share-wrap"> <liclass="share-weibo" > <iclass="icon icon-sina"></i>微博 </li> <liclass="share-wechat pr" > <iclass="icon icon-wechat-dark"> </i>微信 <divclass="share-wechat-wrap"> <div class="qrcode"></div> </div> </li> </ul> </span> </section>
</li> 省略 <li class="list"> 省略 </li> <li class="list"> 省略 </li> </ul> 这是个无序列表,我们所要所有信息都在class=list的li 标签下,下面实验一下,。
挨在一块的数据,不是很理想,那就遍历一下。
虽然还算可以,还需修改一下。 数据 okl! 源码如下: Sub kaohisng()
Dim oHml As Object, oXml As Object Dim i%
Set oHml = CreateObject("htmlfile") Set W = oHml.parentWindow oHml.write "<script src='http://ajax.microsoft.com/ajax/jquery/jquery-1.4.min.js'></script><body></body>"
Set oXml = CreateObject("msxml2.xmlhttp") oXml.Open "GET", "file:///" & ThisWorkbook.Path & "\现在.html", False oXml.send oHml.body.innerHtml = oXml.responseText 'Debug.Print W.eval("$('li.list').text()") Stop Set Z = W.eval("$('li.list')") Stop For i = 0 To W.eval("$('li.list').length") - 1 ' Debug.Print "第" & i + 1 & "条数据...." & W.eval("$('li.list').eq(" & i & ").text()") Next Stop For i = 0 To W.eval("$('li.list').length") - 1 Debug.Print "第" & i + 1 & "条数据时间。。。。." & Split(W.eval("$('li.list').eq(" & i & ").text()"), "【")(0) Debug.Print "第" & i + 1 & "条数据标题。。。。" & Split(W.eval("$('li.list').eq(" & i & ").text()"), " ")(2) Debug.Print "第" & i + 1 & "条数据内容。。。。" & Split(W.eval("$('li.list').eq(" & i & ").text()"), "】 ")(1) Next End Sub
|