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

小歆13年前软件源码05025
方法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



相关文章

[乱码力作]VBS基础教程

教程目录 1.VBS与VB的故事 2.MsgBox的秘密 3.InputBox的技巧 4.自定义函数(一)...

Google官方C++编程规范手册

Google官方C++编程规范手册

Google C++ 编程规范 目录: 下载地址:       小歆网盘:Google C  编程规范(541.98 KB...

从Https跳转到Http时不传递HTTP_REFERER的解决方案

问题场景当http页面通过Referer获取上一个页面的URL时,如果上一个页面是https,则得到的Referer为空。 例如在http页面的PHP代码中使用:$_SERVER['HTTP_REF...

最全电子元器件介绍(图文教程)

本文档对常用元器件概念、分类、主要参数、功能等进行了详细阐述。 很详细,实物图展示。楼主出血大放送! 为了大家让能看懂BOM中电子料的规格描述,了解常用电子元器件的类别...

vb参考资料.jpg

VB编程语言参考手册

VB编程语言参考手册 资源目录: 小歆网盘:VB编程语言参考手册.rar...

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

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

发表评论    

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