我知道用webbrowser控件的document对象可以操作网页的html内容,但是得等到这一页在webbrowser里下载完了才行,现在好多网页里一些死图片,大图片弄得webbrowser的documentcomplete事件很慢好像死掉一样,我想直接取一页的html,然后提取里面的内容,inet的openurl可以取得html,但是好像没法操作这些东西吧(菜,可能我不知道),大家有没有什么好的办法解决这个问题么,快一点的。谢
解决方案 »
- 这个网上找不到,(VB6.0)
- Vb里如何表示变量的变量?
- 请问各位高手,如何在listbox控件中的每一项前面添加checkbox复选框啊?
- True DBGrid pro 7.0数据源的游标位置问题
- 发传真的问题!我已经试过用MAPI与FaxCom中类发传真都不行. 急!!几年了,还没有一个完整的答案,在线等候.
- 紧急求助~~~vb中怎么接入flash??/有分
- 如何制作控件,是在原msflexgrid的控件基础上改造的(分200)
- 请问,我要使用VB6编写一个基于WIN98或WIN2000的DOS环境(命令行环境的)程序
- 用VB如何检测一个文件是否被其他程序打开了?
- VB如何对数据库记录进行访问。
- 垃圾问题datareport 中的网络大小怎么调?
- 咱们vb版块中,哪个版块人气最旺呀?(指哪个子类)
Dim P() as byte
Dim T as string
B = Inet1.OpenUrl(URL)
For i = 1 to Ubound(B)
T = T + Chr(P(T))
next i
End function
楼上这是什么意思啊,比如我想取出一个网上的html页的所有"ftp://"连接,应该怎么弄呢
==============================================================================
call OpenUrl ("网页地址")网页源代码存在了t变量中
要找“ftp://”是要字符串处理的
Function OpenUrl (URL)
Dim P() as byte
Dim T as string
B = Inet1.OpenUrl(URL)
For i = 1 to Ubound(B)
T = T + Chr(P(T))
next i
End function
===============
这段没看懂啊,p()和t好像没有赋值嘛,还有b那个地方应该是个字符串,ubound没用过,看msdn上说是看数组的最大下标啊
Dim hehe As String
Dim strUrl As String
Dim StrStart As String
Dim StrEnd As String
Dim Patrn
Dim replStr
strUrl = "http://mmsg.qq.com/cgi-bin/gddylist?Type=13&Sort=1&Page=3"
StrStart = "<html>"
StrEnd = "</html>"
Patrn = ".*(<td width=""35%"" bgcolor=""#[\dABCDE]{6}"">(.*)</td>)[.\n]*"
replStr = "$2" & Chr(13) & Chr(10)
hehe = Hello(strUrl, StrStart, StrEnd, Patrn, replStr)
Text1.Text = hehe
End Sub
Function Hello(strUrl, StrStart, StrEnd, Patrn, replStr)
Dim str As String
str = GetBody(strUrl)
str = MyMid(str, StrStart, StrEnd)
str = ReplaceTest(Patrn, replStr, str)
Hello = str
End FunctionFunction MyMid(str, StrStart, StrEnd)
Dim i As Integer
Dim j As Integer
If StrStart = "" Then
i = 0
Else
i = InStr(str, StrStart)
End If
If StrEnd = "" Then
j = Len(str)
Else
j = InStr(i, str, StrEnd)
End If
MyMid = Mid(str, i, j - i + 1)
End FunctionFunction ReplaceTest(Patrn, replStr, str1)
'可以在VB中用RegExp。regexp.tlb是VBScript.DLL 的TypeLib,版本5.5。可以在vb中导入后使用RegExp。
Dim regEx, match, matches
Set regEx = New RegExp
regEx.Pattern = Patrn
regEx.IgnoreCase = True
regEx.Global = True
Set matches = regEx.Execute(str1)
For Each match In matches
ReplaceTest = ReplaceTest & regEx.Replace(match.Value, replStr)
Next
End FunctionFunction GetBody(Url)
Dim ObjXML
Set ObjXML = CreateObject("Microsoft.XMLHTTP")
With ObjXML
.Open "Get", Url, False, "", ""
.SEnd
GetBody = .ResponseBody
End With
GetBody = BytesToBstr(GetBody, "GB2312")
Set ObjXML = Nothing
End FunctionFunction 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 FunctionPrivate Sub Command2_Click()
Text1.Text = GetBody(Text2.Text)
End Sub