⑴ 怎麼用VBA或網路爬蟲程序抓取網站數據
VBA網抓常用方法
1、xmlhttp/winhttp法:
用xmlhttp/winhttp模擬向伺服器發送請求,接收伺服器返回的數據。
優點:效率高,基本無兼容性問題。
缺點:需要藉助如fiddler的工具來模擬http請求。
2、IE/webbrowser法:
創建IE控制項或webbrowser控制項,結合htmlfile對象的方法和屬性,模擬瀏覽器操作,獲取瀏覽器頁面的數據。
優點:這個方法可以模擬大部分的瀏覽器操作。所見即所得,瀏覽器能看到的數據就能用代碼獲取。
缺點:各種彈窗相當煩人,兼容性也確實是個很傷腦筋的問題。上傳文件在IE里根本無法實現。
3、QueryTables法:
因為它是excel自帶,所以勉強也算是一種方法。其實此法和xmlhttp類似,也是GET或POST方式發送請求,然後得到伺服器的response返回到單元格內。
優點:excel自帶,可以通過錄制宏得到代碼,處理table很方便
。代碼簡短,適合快速獲取一些存在於源代碼的table里的數據。
缺點:無法模擬referer等發包頭
也可以利用採集工具進行採集網頁端的數據,無需寫代碼。
⑵ 如何 採集網站 數據
你那樣肯定不出來的
還得有個
response.write Http.responseBody
不過上面寫出來得都是亂碼
用我的
<%
function getHTTPPage(url)
dim Http
set Http=server.createobject("MSXML2.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
set http=nothing
if err.number<>0 then err.Clear
end function
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Dim Url,Html
Url="http://52xiha.cn/untitled1.asp"
Html = getHTTPPage(Url)
Html = Replace(Html,"鐵嶺縣教育局","不知道") '這就不解釋了
response.write html
%>
⑶ 如何採集Java寫的網頁數據
Htmlunit這個工具類,進行http請求訪問,獲取html網頁,以及過濾網頁html標簽獲取網頁文本。
主要的思路還是以下幾點:
1.了解你要爬取的網頁的元素,以及通訊,校驗安全機制。常用方法通過chrome瀏覽器訪問你要獲取的網頁,基本上一個老司機打開F12就差不多知道頁面的表單,數據以及通過什麼樣的請求方式請求服務,並又是怎麼樣返回,載入到頁面進行渲染。如果還不熟悉這個F12,那還不趕快去get起來啊,時間短,效率快,看一遍就知道怎麼用了的好東西不利用起來,不是太浪費了。
2.了解了你要訪問的網頁的你想要獲取的元素之後,就是怎麼發起http的request請求,模擬這個請求獲取response。那這個request就是通過在程序里模擬的瀏覽器器發起,如果成功發起,那麼你需要的數據就藏在這個response里。
3.成功獲取response之後,就是怎麼進行解析,獲取你想要的數據。當然,如果是json數據,那麼解析起來就很容易。如果返回的是整個html,那也是有辦法解析,抽取轉換成需要的文本進行入庫。
接下來,就通過實際的編碼,來如何一步步實現。
有些網站,是通過登陸來取得認證看到更多數據,有些網站可以直接發請求訪問。而我寫的這個列子,就是登陸之後,獲取的網站內部的數據。
基本思路就是,通過登陸拿到令牌,然後拿著這個令牌,去訪問這個網站內你需要訪問的地址,從而獲取數據。
⑷ 如何自動採集網頁上的數據
八爪魚採集器的雲採集就可以做到
配置好採集任務,就可以關機了,任務可以在雲端執行,數量龐大的企業雲,24*7不間斷運行,再也不用擔心IP被封,網路中斷了,還能瞬間採集大量數據。
⑸ 需要登錄的網站數據如何採集
登錄的網站才訪問網頁時網站會驗證cookie信息,以確定當前用戶是否登錄,所以在採集這類網站的數據時,需要同步發送cookie數據,確保網站驗證cookie可以成功。
cookie如何來?可以使用抓包工具,然後打開瀏覽器實現目標採集網站的登錄操作,然後再抓包工具中將記錄的cookie拷貝出來,粘貼到你所使用的採集軟體中,或者利用採集軟體直接實現登錄操作。
如果登錄遇到驗證碼,自動化登錄的操作就比較難搞了,除非去自動打碼,花錢的呦
總之,就是採集登錄的網站,需要使用cookie
⑹ 網頁數據採集是什麼,有什麼用,如何實現的
網頁數據採集:簡單的說獲得網頁上一些自己感興趣的數據。當前大數據相當的火爆,所以網路上有非常多的採集軟體,數據採集的作用有多種用途,比較常用的就是:1.採集數據,通過自己整合,分類,在自己的網站或者APP展示,如:今日頭條。2.深度學習的數據源。
⑺ 怎麼採集網站數據
可以使用爬蟲軟體,現在市場上的爬蟲軟體已經很成熟了,對小白和入門新手也都是很友好的。如果不知道用哪個爬蟲的話可以試一下ForeSpdier數據採集引擎。操作簡單易上手,而且還有各種教程想輔助,基本上一個網站10分鍾就可以搞定。下附截圖:
⑻ 怎麼把網頁中數據採集到資料庫中
看開發語言,需要寫程序。
例如URL類進行訪問,或者對鑒權的網站使用HTTPClient,獲得body後可以用正則表達式去除標簽。
⑼ 互聯網採集數據有哪幾種常見的方法
通過日誌獲取數據的,一般是伺服器,工程類的,這類型數據一般是人為制定數據協議的,對接非常簡單,然後通過日誌數據結構化,來分析或監測一些工程類的項目通過JS跟蹤代碼的,就像GA,網路統計,就屬於這一類,網頁頁尾放一段JS,用戶打開瀏覽網頁的時候,就會觸發,他會把瀏覽器的一些信息送到伺服器,基於此類數據做分析,幫助網站運營,APP優化。通過API,就像一些天氣介面,國內這方面的平台有很多,聚合就是其中一個,上面有非常多的介面。此類的,一般是實時,更新型的數據,按需付費通過爬蟲的,就像網路蜘蛛,或類似我們八爪魚採集器,只要是互聯網公開數據均可採集,這類型的產品有好幾款,面向不同的人群,各有特色吧。而說能做到智能的,一般來說,也就只有我們這塊的智能演算法做得還可以一點。(利益相關)比如自動幫你識別網頁上的元素,自動幫你加速等。埋點的,其實跟JS那個很像,一般是指APP上的,像神策,GROWINGIO之類的,這種的原理是嵌套一個SDK在APP裡面。如果對某項採集需要了解更深再說吧,說白就是通過前端,或自動化的技術,收集數據。
⑽ 網站數據採集原理
A服務認為根據不同的採集器種類和開發語言的不同,獲取方式有些不同。但他們都是通過訪問被採集站點來提取被採集站點的相應信息。採集程序通過讀取採集規則中的信息來確定應該以什麼樣的方式來訪問被採集網站,被採集網站中哪些地址是有效的,哪些內容是該收集的,如何提取有用的信息等等,這些都是由採集規則指定的。
制定規則時需要認真查看列表頁面代碼。起始字元串標准:在頁面html代碼中,所需內容之前有且僅有一次出現(如多次出現,以第一次出現的位置為准);結束字元串標准:在頁面html代碼中,起始字元串之後有且僅有一次出現(如多次出現,以第一次出現的位置為准)。記住這里是起始字元串之後。起始字元串和結束字元串是成對出現的,採集器會截取他們之間的內容作為有效內容;
關於起始字元串和結束字元串的另外一種解釋。起始字元串:在採集到的代碼中處於有效文本信息之前的一段字元串,這段字元串必須滿足以下條件:在有效信息之前的內容中是唯一的。(如不唯一則以第一次出現的位置為准)在有效信息之前的內容中必須存在一個或以上的起始字元串(程序將以該字元串第一次出現的位置為准),否則內容將會提取失敗。結束字元串:在採集到的代碼中處於有效文本信息之後的一段字元串,這段字元串必須滿足以下條件:從 起始字元串 開始到有效信息結束的內容中不得包含該字元串。在有效信息之後的內容中必須存在一個或以上的結束字元串(程序將以該字元串從起始字元串開始第一次出現的位置為准),否則內容將會提取失敗。