温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

VB.NET中抓取网页乱码怎么办

发布时间:2021-12-02 11:32:43 来源:亿速云 阅读:103 作者:小新 栏目:编程语言

这篇文章将为大家详细讲解有关VB.NET中抓取网页乱码怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

举一个小案例如下。以下为VB.Net抓取网页的函数LobDotCn  注:url_Link为抓取的目标页面 IsGb2312为是否Gb2312字符。

VB.NET实用教程代码:

Public Function LobDotCn(ByVal url_Link As String, ByVal IsGb2312 As Boolean)    On Error Resume Next  Dim XmlHttp As Object  XmlHttp = CreateObject("Microsoft.XMLHttp")  XmlHttp.Open("POST", url_Link, False)  XmlHttp.Send()  Dim WebContent As Object  Dim Str_WebContent As String  If IsGb2312 Then  WebContent = XmlHttp.ResponseBody  Str_WebContent = System.Text.Encoding.Default.GetString(WebContent)  Else  WebContent = XmlHttp.ResponseText  Str_WebContent = WebContent.ToString  End If  XmlHttp = Nothing LobDotCn = Str_WebContent End Function

调用方式 :

变量  = LobDotCn("http://www.lob.cn", True)   '抓取 Gb2312网页    
变量  = LobDotCn("此处填写网址", False)    ' 抓取utf-8网页

附Microsoft.XMLHttp组件的相关说明:
Open( bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword )
◆bstrMethod:  数据传送方式,即GET或POST。
◆bstrUrl:     服务网页的URL。
◆varAsync:   是否同步执行。缺省为True,即同步执行,但只能在DOM中实施同步执行。用中一般将其置为False,即异步执行。
◆bstrUser:    用户名,可省略。
◆bstrPassword:用户口令,可省略。
Send( varBody )
◆varBody:指令集。可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。也可以省略,让指令通过Open方法的URL参数代入。
◆setRequestHeader( bstrHeader, bstrvalue )
◆bstrHeader:HTTP 头(header)
◆bstrvalue: HTTP 头(header)的值

如果Open方法定义为POST,可以定义表单方式上传:
xmlhttp.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded")

XMLHTTP属性:
◆onreadystatechange:在同步执行方式下获得返回结果的事件句柄。只能在DOM中调用。
◆responseBody:    结果返回为无符号整数数组。
◆responseStream:   结果返回为IStream流。
◆responseText :    结果返回为字符串。
◆responseXML:    结果返回为XML格式数据。

关于“VB.NET中抓取网页乱码怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI