在线等WebBrowser和数组问题网页部分代码如下:a iddfs0 hrefhttp://www.xxxx...a iddfs1 hrefhttp
在线等WebBrowser和数组问题
网页部分代码如下:
<a id=dfs0 href="http://www.xxxx...
<a id=dfs1 href="http://www.xxxx...
<a id=dfs2 href="http://www.xxxx...
<a id=dfs3 href="http://www.xxxx...
<a id=dfs4 href="http://www.xxxx...
<a id=dfs5 href="http://www.xxxx...
<a id=dfs6 href="http://www.xxxx...
<a id=dfs7 href="http://www.xxxx...
每次id的dfs数都不一样
想通过WebBrowser获取出当前网页id中包含dfs和对应的href
看代码:
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Dim a
For Each a In WebBrowser1.Document.All
If a.tagname = "A" Then
If a.Id = "dfs0" Then
Text2.Text = a.href
End If
End If
End If
Next
End Sub
请教高人如何将网页中存在的dfs写入数组中,并取出随即的1个id和其id对应的href啊
[解决办法]
- VB code
Dim arr()Dim brr()Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant) Dim a As Object Dim i As Long For Each a In WebBrowser1.Document.All If a.tagname = "a" Then If Left(a.id, 3) = "dfs" Then ReDim Preserve arr(i) ReDim Preserve brr(i) arr(i) = a.href brr(i) = id List1.AddItem brr(i) i = i + 1 End If End If Next Text1.Text = Join(arr, vbCrLf) End SubPrivate Sub List1_Click()MsgBox arr(List1.ListIndex) & " " & brr(List1.ListIndex)End Sub
[解决办法]
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Dim arr()
Dim brr()
Dim a As Object
Dim i, x As Integer
For Each a In WebBrowser1.Document.All
If a.tagname = "A" Then
If Left(a.Id, 3) = "dfs" Then
ReDim Preserve arr(i)
ReDim Preserve brr(i)
arr(i) = a.href
brr(i) = a.Id
i = i + 1
x = Int(Rnd() * (UBound(Split(Join(brr, vbCrLf), "dfs")) - 1 - 0 + 1)) + 0
If a.Id = "dfs" & x Then Text1.Text = "dfs" & x & " " & a.href
End If
End If
Next
End Sub
