如何用vb webbrowser获取带框架网页的全部源代码?

如何用vb webbrowser获取带框架网页的全部源代码?,第1张

用vb webbrowser获取带框架网页的全部源代码,指令如下:

WebBrowser1.Document.frames(0).Document.documentElement.outerHTML

遍历框架就可以得到所有的(WebBrowser1.Document.frames(0).count框架个数)。

源代码(也称源程序)是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。

在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。

先引用正则库,然后编写如下代码,其中html的值替换为你问题中的html源码。

Private Sub Form_Load()

Dim html As String

html = "<li><em>经验值</em>28733</li><li><em>金币数</em>2300</li>"

ExpeValue = FindFirstGroup("<em>经验值</em>(\d+)</li>", html)

CoinValue = FindFirstGroup("<em>金币数</em>(\d+)</li>", html)

MsgBox "经验值为" &ExpeValue

MsgBox "金币值为" &CoinValue

End Sub

Private Function FindFirstGroup(pattern As String, src As String) As String

Dim re As RegExp

Set re = New RegExp

With re

.pattern = pattern

Set Matches = .Execute(src)

If Matches.Count = 0 Then

FindFirstGroup = ""

Else

FindFirstGroup = Matches(0).SubMatches(0)

End If

End With

End Function

1 先加载网页:

Private Sub Form_Load()

WebBrowser1.Navigate "http://zhidao.baidu.com/question/123877723.html"

End Sub

2 加载完成后取字符串到文本框:

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)

Dim doc As Object, objhtml As Object

Dim strhtml As String

On Error GoTo errorsub

Me.Caption = WebBrowser1.LocationName &"加载完成"

If MaxWebNum <= 0 Then

Set doc = WebBrowser1.Document

Set objhtml = doc.body.createtextrange()

If Not IsNull(objhtml) Then

strhtml = WebBrowser1.Document.body.innertext

Text1.Text = strhtml

End If

End If

Exit Sub

errorsub:

Text1.Text = "错误!!!"

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11895873.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存