網(wǎng)絡(luò)爬蟲(chóng)是干什么的?
您好,很高興回答您這個(gè)問(wèn)題。
什么是網(wǎng)絡(luò)爬蟲(chóng)?網(wǎng)絡(luò)爬蟲(chóng)(又被稱為網(wǎng)頁(yè)蜘蛛,網(wǎng)絡(luò)機(jī)器人,在FOAF社區(qū)中間,更經(jīng)常的稱為網(wǎng)頁(yè)追逐者),是一種按照一定的規(guī)則,自動(dòng)地抓取萬(wàn)維網(wǎng)信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動(dòng)索引、模擬程序或者蠕蟲(chóng)。
其實(shí)通俗的講就是通過(guò)程序去獲取web頁(yè)面上自己想要的數(shù)據(jù),也就是自動(dòng)抓取數(shù)據(jù)爬蟲(chóng)可以做什么?你可以用爬蟲(chóng)爬圖片,爬取視頻等等你想要爬取的數(shù)據(jù),只要你能通過(guò)瀏覽器訪問(wèn)的數(shù)據(jù)都可以通過(guò)爬蟲(chóng)獲取。爬蟲(chóng)的本質(zhì)是什么?模擬瀏覽器打開(kāi)網(wǎng)頁(yè),獲取網(wǎng)頁(yè)中我們想要的那部分?jǐn)?shù)據(jù)瀏覽器打開(kāi)網(wǎng)頁(yè)的過(guò)程:當(dāng)你在瀏覽器中輸入地址后,經(jīng)過(guò)DNS服務(wù)器找到服務(wù)器主機(jī),向服務(wù)器發(fā)送一個(gè)請(qǐng)求,服務(wù)器經(jīng)過(guò)解析后發(fā)送給用戶瀏覽器結(jié)果,包括html,js,css等文件內(nèi)容,瀏覽器解析出來(lái)最后呈現(xiàn)給用戶在瀏覽器上看到的結(jié)果所以用戶看到的瀏覽器的結(jié)果就是由HTML代碼構(gòu)成的,我們爬蟲(chóng)就是為了獲取這些內(nèi)容,通過(guò)分析和過(guò)濾html代碼,從中獲取我們想要資源。
那怎么學(xué)習(xí)呢,首先需要一點(diǎn)Python的基礎(chǔ),需要了解HTML+CSS,會(huì)用Firebug分析網(wǎng)頁(yè)需要了解一點(diǎn)網(wǎng)絡(luò)通信,會(huì)抓包分析網(wǎng)絡(luò)請(qǐng)求學(xué)習(xí)使用urllib庫(kù)訪問(wèn)網(wǎng)站(推薦學(xué)習(xí)使用requests庫(kù))學(xué)習(xí)寫(xiě)正則表達(dá)式學(xué)習(xí)使用beautifulsoup庫(kù)。
推薦您使用Chrome這款工具,Chrome是爬蟲(chóng)最基礎(chǔ)的工具,一般我們用它做初始的爬取分析,頁(yè)面邏輯跳轉(zhuǎn)、簡(jiǎn)單的js調(diào)試、網(wǎng)絡(luò)請(qǐng)求的步驟等。我們初期的大部分工作都在它上面完成,打個(gè)不恰當(dāng)?shù)谋扔鳎挥肅hrome,我們就要從現(xiàn)代倒退到幾百年前的古代!
以上就是我對(duì)您問(wèn)題做出的解答。歡迎在評(píng)論區(qū)提出不同的觀點(diǎn)。