永发信息网

vb 获取网页显示指定内容

答案:2  悬赏:40  手机版
解决时间 2021-05-10 00:01
  • 提问者网友:你给我的爱
  • 2021-05-09 10:21

http://zzzzzccccc12345.blog.163.com/blog/static/17401992200910191519499/edit/

用两个 label

一个显示 标题 “没有事情”

另一个显示正文 “没有事情”

最佳答案
  • 五星知识达人网友:duile
  • 2021-05-09 11:09

使用正则表达式获取,这是正则表达式的强项


你可以换 http://blog.163.com/ruofu2009@126/blog/static/1163240712009101921552857/这个地址测试


只要是网易的 应该都可以获取,你也可以修改正则表达式进行其它值的获取



新建一个工程


引用Microsoft VBScript Regular Expressions 5.5


部件添加Inet控件就OK了



Private Sub Command1_Click()
Dim Regex As New RegExp
Dim matchcoll As MatchCollection
Dim match As match
Dim tmpStr As String


tmpStr = Inet1.OpenURL( http://zzzzzccccc12345.blog.163.com/blog/static/17401992200910191519499/?mode=edit)


Regex.Global = True
Regex.IgnoreCase = True
Regex.MultiLine = True
Regex.Pattern = "<title>(.+) - .*的日志 - 网易博客</title>[\S|\s]+<div class=""ns_content"">((\S|\s)+?)<\/p>[\s+<\/div>]{3}"


If Regex.Test(tmpStr) Then
Set matchcoll = Regex.Execute(tmpStr)
Set match = matchcoll.Item(0)
Label1.Caption = match.SubMatches(0)
Label2.Caption = match.SubMatches(1)
Else
MsgBox "获取失败"
End If

End Sub

全部回答
  • 1楼网友:忘川信使
  • 2021-05-09 12:47

没完全实现,实现一部分,给你做参考吧

Private Sub Command4_Click() Set xmlHTTP1 = CreateObject("Microsoft.XMLHTTP") xmlHTTP1.Open "get", " http://zzzzzccccc12345.blog.163.com/blog/static/17401992200910191519499/edit/", True xmlHTTP1.send While xmlHTTP1.ReadyState <> 4 DoEvents Wend Text2.Text = xmlHTTP1.responseText Dim i As Integer Dim j As Integer i = InStr(1, Text2.Text, "<title>") j = InStr(1, Text2.Text, "</title>") Text3.Text = Mid(Text2.Text, i + 7, j - i - 7) Set xmlHTTP1 = Nothing End Sub

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯