VB获取网页源代码的五种方法

小歆14年前软件源码06971
方法1:inet控件调用方法 Inet1.OpenURL
    添加microsoft ineternet transfor conctrol6.0 控件
                              

方法2:XMLHTTP

'如果出现乱码,UTF-8可改为GB2312
Public Function GetBody(ByVal URL$, Optional ByVal Coding$ = "GB2312")
Dim ObjXML
On Error Resume Next
Set ObjXML = CreateObject("Microsoft.XMLHTTP")
With ObjXML
.Open "Get", URL, False, "", ""
.setRequestHeader "If-Modified-Since", "0"
.Send
GetBody = .ResponseBody
End With
GetBody = BytesToBstr(GetBody, Coding)
Set ObjXML = Nothing
End Function
Public Function BytesToBstr(strBody, CodeBase)
Dim ObjStream
Set ObjStream = CreateObject("Adodb.Stream")
With ObjStream
.Type = 1
.Mode = 3
.Open
.Write strBody
.Position = 0
.Type = 2
.Charset = CodeBase
BytesToBstr = .ReadText
.Close
End With
Set ObjStream = Nothing
End Function

Private Sub Command1_Click()
u = "http://wenku.baidu.com/search?word=vb&lm=0&od=0&fr=top_search"
Text1.Text = GetBody(u) '最好用richbox富文本框
End Sub


方法3:WinHttp

Private Sub Command4_Click()
   Set IEread = CreateObject("WinHttp.WinHttpRequest.5.1")
   CallByName IEread, "Open", VbMethod, "GET", URLaddr, True
   CallByName IEread, "Send", VbMethod
   CallByName IEread, "WaitForResponse", VbMethod
   aa = CallByName(IEread, "ResponseText", VbMethod)
   RichTextBox1.Text = aa
End Sub


方法4:'利用WebBrowser控件

Private Sub Command1_Click()
Dim strContent As String, i As Integer
Text1 = ""
For i = 0 To WebBrowser1.Document.All.length - 1
    If WebBrowser1.Document.All(i).tagName = "HTML" Then
        strContent = strContent & WebBrowser1.Document.All(i).innerHTML
    Exit For
End If
Next i
Text1 = strContent
End Sub


方法5:利用Inet控件的Execute方法

Private Sub Command5_Click()
Text1 = ""
Inet1.Execute Text2.Text, "GET"
While Inet1.StillExecuting
DoEvents
Wend
Text1.Text = Inet1.GetChunk(Len(Text1.Text))
End Sub



相关文章

用VB快速读取TextBox第N行的数据

TextBox 是以 vbCr+vbLf 为分行符号, 如果我们要逐一读取 TextBox 每一行, 无非是寻找 vbCr+vbLf 的所在位置, 然后取出每一行的字串, 不过这个方法不快,而且...

VB字符串函数大全

Abs(number) 返回绝对值。 Array(arglist) 创建一个数组。 Asc(string) 返回字符串第一个字符的ANSI码。 Atn(number) 返回反...

嵌入式软件架构设计

模块划分 模块划分的"划"是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能...

在线学高校精品课程(部分失效)

计算机专业视频合集(计算机、数据库、编程、软件等) 下载地址: http://pan.baidu.com/s/1c0voWnQ 密码: sknk 土木类专业视频合集 (土木...

U盘装系统中bios怎么设置USB启动

U盘装系统中bios怎么设置USB启动(图文教程)   常见的两种设置方法:8 L( q)...

vb中Msgbox函数的用法

VB中的Msgbox函数,可实现弹出窗口 作用:在对话框中显示消息,等待用户单击按钮,并返回一个 Integer 告诉用户单击哪一个按钮。 语法: MsgBox...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。