本帖最后由 u012819276 于 2013-11-13 15:25:50 编辑

解决方案 »

  1.   

    MsgBox
    Debug.Print
    Cells
    都是有长度限制的,超长就会被截断,所以你觉得“获取信息不全
    Sub getSingleSeoData()    '获取网页数据
    '获取网页数据-chinaz
        Dim HTTPREQ As Object
        Set oDoc = CreateObject("htmlfile")
        Set HTTPREQ = CreateObject("MSXML2.XMLHTTP.3.0")
        HTTPREQ.Open "GET", "http://seo.chinaz.com/?q=bbs.csdn.net", False
        HTTPREQ.Send
        Do Until HTTPREQ.ReadyState = 4
            DoEvents
        Loop
        oDoc.body.innerHTML = HTTPREQ.responseText
        Cells(1, 1).Value = oDoc.body.innertext    '获取网页数据-baidu
        HTTPREQ.Open "GET", "http://www.baidu.com/s?wd=site%3Abbs.csdn.net", False
        HTTPREQ.Send
        oDoc.body.innerHTML = HTTPREQ.responseText
        Cells(1, 2).Value = oDoc.body.innertext
        Set HTTPREQ = Nothing
    End Sub
      

  2.   

    二楼的意思是,我用字符串去操作还是可以的对吧,那为什么截取tool.chinaz.com的时候,他反馈的信息不全呢(不是截断)
      

  3.   

    顺便问下,我怎么得到这里面的百度快照信息、首页信息等SEO信息呢?还有百度那里面应该如何得到找到相关结果数X个,这个X呢?
      

  4.   

    这个X呢?Sub getSingleSeoData()
        Dim HTTPREQ As Object
        Set oDoc = CreateObject("htmlfile")
        Set HTTPREQ = CreateObject("MSXML2.XMLHTTP.3.0")
        HTTPREQ.Open "GET", "http://www.baidu.com/s?wd=site%3Abbs.csdn.net", False
        HTTPREQ.Send
        oDoc.body.innerHTML = HTTPREQ.responseText
        Cells(1, 2).Value = Split(Split(oDoc.All.tags("p")(0).innertext, "个")(0), "数")(1)
        Set HTTPREQ = Nothing
    End Sub
      

  5.   

    亲,你也关注我一下,这样我才可以发私信再问一下CreateObject("htmlfile")这个都有哪些函数可以进行HTMLFILE处理,发个网址就行,我该怎么用呢,我现在要从tool.chinaz.com上获取流量,关键词数量,BR,PR,信息(其他信息貌似chinaz是用JS动态获取的,所以貌似他的HTMLFILE看不到,只能用百度),然后再百度上获取百度首页(http://www.baidu.com/s?wd=site%3Abbs.csdn.net)、快照(http://www.baidu.com/s?wd=http://bbs.csdn.net)、反链(http://www.baidu.com/s?wd=domain%3Abbs.csdn.net),今日收录新文章数量(http://www.baidu.com/s?q1=site%3Abbs.csdn.net&q2=&q3=&q4=&rn=100&lm=1&ct=0&ft=&q5=&q6=&tn=baiduadv)
    -方法:只要数出当前页码有多少快照是“2013-11-14”的就行:
    求代码,麻烦的话方法也行,真心谢谢了~
      

  6.   

    帖子分最大数了,不然我还想给亲加分,如果是一个新站点,可能百度的页面和chinaz会显示未找到,比如:http://www.baidu.com/s?wd=site%3Anopages111111.com
    http://seo.chinaz.com/?q=nopages111111.com就是这些边界条件可能还要判断一下,最终的结果是要达到这样的,请大神过目:
    其中快照隔天指的是昨天,比如今天2013-11-15,隔天就是2013-11-14
    而-3就是隔天减去三天就是2013-11-11首页1就是在第一个,首页3就是在第二个,首页0就是第一页没有首页再次谢谢大神了!
      

  7.   

    你也在做VBA SEO数据采集? 咱们同路。