国产女人被狂躁到高潮小说,亚洲日韩一区二区三区,色窝窝无码一区二区三区成人网站 ,丰满岳乱妇在线观看中字无码

400-800-9385
網站建設資訊詳細

詳談方維站長工具如何解決抓取谷歌結果返回403錯誤問題

發表日期:2012-10-24 00:00:00   作者來源:方維網絡   瀏覽:6789   標簽:方維站長工具    谷歌    
    方維站長工具能查詢網站各大搜索引擎收錄數量和百度權重、百度相關域、百度快照、百度近日收錄、網站歷史查詢、網站升級查詢等。但是在抓取谷歌網頁結果的時候,返回403錯誤問題,同樣的地址,用瀏覽器打開時顯示正常的搜索結果頁面,但用程序抓取就出現403錯誤頁面,里面講的是判斷訪問對象是機器,可見谷歌對程序或軟件抓取結果已經做了相關的措施,因為谷歌+1算法已經生效,防止機器抓取可以防止機器點擊。所以,方維站長工具一直因為這個原因無法抓取谷歌收錄、谷歌排名數據。

    一直以來,我都在網上尋找問題的答案,因為我看有些站長工具能夠抓取,所以問題一定有解決的方法,我開始懷疑是路徑不對,不過我發覺也只有這個路徑,于是我把目標指向了抓取網頁的程序,采用其他方法,沒想到,讓我驚奇的結果出來了。用Microsoft.XMLHTTP對象獲取就可以抓取到正常結果,我以前是用MSXML2.SERVERXMLHTTP.3.0對象來抓取的。代碼如下。

Function getHTTPPage(url,charcode)
    dim objXML
    'set objXML=createobject("MSXML2.SERVERXMLHTTP.3.0")  '調用XMLHTTP組件,測試空間是否支持XMLHTTP
    set objXML=createobject("Microsoft.XMLHTTP")
 objXML.open "GET",url,false 'false表示以同步的方式獲取網頁代碼,了解什么是同步?什么是異步?
    objXML.send() '發送
    getHTTPPage=bBytesToBstr(objXML.responseBody,charcode)'返回信息,同時用函數定義編碼
    set objXML=nothing'關閉
End Function


Function bBytesToBstr(body,charcode)
    dim objstream
    set objstream = CreateObject("adodb.stream") '//調用adodb.stream組件
    objstream.Type = 1
    objstream.Mode =3
    objstream.Open
    objstream.Write body
    objstream.Position = 0
    objstream.Type = 2
    objstream.Charset = charcode '轉換原來默認的UTF-8編碼轉換成GB2312編碼,否則直接用XMLHTTP調用有中文字符的網頁得到的將是亂碼
    bBytesToBstr = objstream.ReadText
    objstream.Close
    set objstream = nothing
end Function

通過使用這個抓取函數,谷歌的收錄數據、排名數據都可以正常獲取了,從而解決了這個BUG。

方維站長工具正在一步步完善,而且源代碼全部開源,只希望保留版權信息。

如沒特殊注明,文章均為方維網絡原創,轉載請注明來自http://www.sdlwjx666.com/news/1717.html