VB.NET实用教程教你调试VB.Net调用Microsoft.XMLHttp组件抓取网页时,遇到抓取中文字符出现乱码的问题,在这里给大家仔细分析一下,举一个小案例如下。以下为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实用教程为你提供的一个完整的解决方法,希望对研究VB.Net抓取网页或者VB.Net实现采集功能的朋友有所帮助。
网站题目:VB.NET实用教程之抓取网页乱码解决方案
本文URL:http://www.shufengxianlan.com/qtweb/news45/138195.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联