以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教如何获取网页源码? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73513) |
-- 作者:zhy400137 -- 发布时间:2015/8/20 14:20:00 -- 请教如何获取网页源码? 如何像VB一样写一个获取网页源码的函数,想在FX里实时加载一张网页图下,能否给个例子, 论坛里有个例子,但好像和下面VB获取的源码信息不一致,请教下。 Function 获取网页源码(网站,提交类型,提交参数,字符串开始特征,字符串结束特征) \'网站: 字符串,例->
"www点baidu点com" \'提交类型: "POST" 或者 "GET" \'提交参数: 例-> search=QQ&QQ=304834484 \'字符串开始特征: 例-> "<title>" \'字符串结束特征: 例-> "</title>"
Dim 出现位置:出现位置=0
Dim 结束位置:结束位置=0
Dim 返回源码:返回源码=""
Set Http=createobject("Msxml2.XMLHTTP")
Http.open 提交类型, 网站, False
If UCase(提交类型)="POST"
Then
Http.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded"
End If
Http.Send (提交参数) 返回源码=Trim(Http.responseText)
If 字符串开始特征<>""
and 字符串结束特征<>"" Then
出现位置=Instr(1,返回源码,字符串开始特征)
If 出现位置<>0
Then 结束位置=Instr(出现位置,返回源码,字符串结束特征)
获取网页源码=Mid(返回源码,出现位置+Len(字符串开始特征),结束位置-出现位置-Len(字符串开始特征))
Else
获取网页源码=False
End If
Else
获取网页源码=返回源码
End If
Set Http=Nothing End Function |
-- 作者:大红袍 -- 发布时间:2015/8/20 14:25:00 -- Dim url As String = "http://www.foxtable.com" Dim rqst As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create(url) Dim rsps As System.Net.HttpWebResponse = rqst.GetResponse Dim stm As System.IO.Stream = rsps.GetResponseStream() Dim reader As New System.IO.StreamReader(stm) Dim str As String = reader.ReadToEnd rsps.Close msgbox(str) |
-- 作者:zhy400137 -- 发布时间:2015/8/20 15:05:00 -- 可以了,谢谢,但代码有点慢,第一次读取时! |
-- 作者:zhy400137 -- 发布时间:2015/8/20 15:09:00 -- 可能再提高一点速度不,老师,请教! |
-- 作者:大红袍 -- 发布时间:2015/8/20 15:29:00 -- 快慢取决于你的网速和网页内容的多少啊 |