VB读取网页内容

工作需要!有个网页有很多的内容,要读取!
首先网页上有很多标题,每个标题对应着相应的网页,要把这个相应的网页内容读出来,怎么做?不知说清楚没!举个例子吧!
比如xxx.xxx.xxx.xx这是一个网页,这个网页里只显示标题,如:
1,xxxxxxx
2,xxxxx
3xxxx
4xxxx
有很多页,而每个标题又对应相应的网页,这个网页里的内容要把它读出来。要怎么做呢?谢谢!
非常感谢你的回答!可以获取内容,但现在又有新的问题,获取的是整个网页的内容,我只要里面<p>--</p>之间的内容,要怎么弄呢?谢谢!

这里有两中方法,个人觉得第一种比较快,而且第二种字体总显示乱码。
1、利用inet控件
放一个Internet Transfer Control,一个按纽和两个文本框在窗体上
text1用来输入网址,text2用来输入暂存的文件名如c:\temp.htm
然后输入以下代码
Private Sub Command1_Click()
Dim B() As Byte
'取消所有操作
Inet1.Cancel
'设定协议为HTTP
Inet1.Protocol = icHTTP
'设定URL属性
Inet1.URL = Text1
'将读取的HTML数据放进一个byte array
B() = Inet1.OpenURL(, icByteArray)
'建立一个暂存文件来存放取回来的html文件
Open Text2 For Binary Access Write As #1
Put #1, , B()
Close #1
MsgBox "ok"
End Sub
2、利用webbrower控件
和上边放一样的控件,不过把inet改成webbrower控件(引用的时候选internet controls就可以了),另外再加一个timer控件
然后加入以下代码
Private Sub Command1_Click()
WebBrowser1.Navigate Text1
Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
Dim Doc, ObjHtml As Object
Dim StrHtml As String
Dim B() As Byte
If Not WebBrowser1.Busy Then
Set Doc = WebBrowser1.Document
Set ObjHtml = Doc.body.createtextrange()
If Not IsNull(ObjHtml) Then
B() = ObjHtml.htmltext
Open "c:\temp.htm" For Binary Access Write As #1
Put #1, , B()
Close #1
End If
Timer1.Enabled = False
MsgBox "ok"
End If
End Sub

朋友你好,你现在会读HTML了,但是现在要读取指定标签里的内容,比如<p>中的,你可以这样:

放一个WebBrowser(引用部件的Microsoft Internet Controls)
然后复制下面的代码:

Private Sub Form_Load()
WebBrowser1.Navigate2 "那个网页的地址/文件地址"
End Sub

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim doc As Object, i
Set doc = WebBrowser1.Document
For Each i In doc.getelementsbytagname("p")
Text1.Text = Text1.Text & " " & i.innertext
'得到所有p标签元素;然后将内容(非HTML,这样过滤H5标签)加入文本框
Next
End Sub

'祝楼主你成功喔!
温馨提示:内容为网友见解,仅供参考
无其他回答

VB如何获取网页的内容
1、相关代码如下:Public Function getHtmlStr(strUrl As String) '获取远程网页源码 On Error Resume Next Dim XmlHttp As Object, stime, ntime Set XmlHttp = CreateObject("Microsoft.XMLHTTP") XmlHttp.open "GET", strUrl, True XmlHttp.send stime = Now '获取当前...

VB获取网页特定内容
用webbrowser.navigate FileName 然后那个控件就能看到网页了 部件-microsoft internet Controls

使用VB提取网页中的内容,为何程序执行后TEXT框中什么都没有?(代码如下...
Private Sub Command1_Click() WebBrowser1.Navigate "End SubPrivate Sub WebBrowser1_StatusTextChange(ByVal Text As String)Debug.Print Text If Text = "完毕" Then '网页读取完后执行这里 Dim DataInfo As String '从网页中取得全部文本信息 DataInfo = WebBrowser1.Document...

VB获取网页部分代码
GetElementsByTagname("ul") 获取ul标签集合 GetElementsByTagname("ul").item(0) 集合中的第一个元素 ... item(0).GetElementsByTagname("li") '获取该元素下的li标签的集合

如何从VB的WebBrowser控件中获取网页文字
Function HtmlStr$(Url$) '提取网页源码函数 Dim XmlHttp Set XmlHttp = CreateObject("Microsoft.XMLHTTP") XmlHttp.Open "GET", Url, False XmlHttp.send If XmlHttp.ReadyState = 4 Then HtmlStr = StrConv(XmlHttp.ResponseBody, vbUnicode) Set XmlHttp = NothingEnd FunctionPrivate Sub ...

VB 读取网页
用webbrowser控件的 Document.body 可以得到HTML中BODY的所有内容 然后参考这片文章 提取网页中数据 http:\/\/60du.com\/hk\/Show.asp?Id=14841

VB 不加载控件,读取网页数据的方法
Function GetText(ByVal url) As String Dim obj Set obj = CreateObject("Microsoft.XMLHTTP")obj.Open "GET", url, False obj.Send GetText = StrConv(obj.responseBody, vbUnicode)'假如获取的网页源码中的汉字为乱码的话用下面这个 'GetText = obj.responseText End Function '例如 MsgBox ...

VB获得指定网页中的部分内容
你要设置,网页必须在该控件中打开。。其次再添加一个按钮和文本框。然后为按钮添加如下代码:Set oDoc = Web1.Document Set oTxtRgn = oDoc.selection.createRange txtwyxs.Text = oTxtRgn.Text 在程序运行过程中只要你在Web中选中内容,然后单击按钮就可以将选中的文本内容添加到文本框中。

vb 获取网页文本框内容
private sub command1_click text1=webBrowser1.document.getelementbyid("1").value 或:text1=webBrowser1.document.getelementsbyname("1")(0).value end sub 可把上述代码写到WebBrowser1_DownloadComplete事件中 需要将ID设为唯一的,如果有多个tag的ID为"1"(这是网页设计所不允许但不是完全...

VB如何提取网页内容
1、现将网页另存到本地磁盘,假设文件名为XXX.HTM;2、用VB读取存好的XXX.HTM文件的全部内容到一个变量或文本框;3、用搜索函数InStr()和取字串的函数Mid()来抽取出介于“>”和“<”之间的文本,再将其放入另一个文本框,就是你想要的东西。参考资料:http:\/\/zhidao.baidu.com\/question\/8739355...

相似回答