使用vba 获取静态网页中的文字及链接信息

从csdn上找到了很多的材料,最终解决了自己的问题,按照我的思路记录一下,以便于自己以后查找。

  1. 打开一个网页,使用的是Set ht = CreateObject("MSXML2.XMLHTTP")
  2. 使用split函数拆分返回的网页源码信息,可以不停的使用split函数
  3. 使用mid函数读取自己需要的文字信息及链接信息
  4. 如需使用,请调整为自己需要获取数据的网站信息,本示例不能直接执行,需要修改方可。

Public Sub getlist()   '获取网站上的文字及链接信息

Dim i As Long
'定义网址
    Dim strUrl As String
    '定义数组来接收结果
    Dim s0() As String
    Dim s1() As String  '取第一段
    Dim sStr As String
    Dim sLink As String             
    strUrl = "https://www.csdn.net/" '需要下载内容的页面
'创建对象HTML
    Dim ht As Object
    Set ht = CreateObject("MSXML2.XMLHTTP")  '使用打开网页的一种方式,XMLHTTP
    With ht
'发送请求
     .Open "get", strUrl, False
      .send
'等待响应
     Do While .ReadyState <> 4  '状态值
         DoEvents
      Loop
                   s0 = VBA.Split(.responsetext, "头条") '.responsetext返回页面的全部内容,返回的内容与我们通过打开网页后选择查看源代码看到的内容是一样的.
        sStr = Mid(s0(1), 2, 2) '需要获取的str信息,位于s0文字数组的位置,直接取
        s1 = VBA.Split(s0(1), "href")
      sLink = Mid(s4(1), 1, 2)’取链接地址
       Sheet1.Cells(2, 1) = sStr  '写数据到excel中去

Sheet1. Cells(2, 2)=sLink

    End With

 End Sub

上一篇:我国共计34个省级行政区,包括23个省、5个自治区、4个直辖市、2个特别行政区。


下一篇:Python 通过 .cube LUT 文件对图像加滤镜