国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Node.js環境下編寫爬蟲爬取維基百科內容的實例分享

2019-11-20 09:43:28
字體:
來源:轉載
供稿:網友

基本思路
思路一(origin:master):從維基百科的某個分類(比如:航空母艦(key))頁面開始,找出鏈接的title屬性中包含key(航空母艦)的所有目標,加入到待抓取隊列中。這樣,抓一個頁面的代碼及其圖片的同時,也獲取這個網頁上所有與key相關的其它網頁的地址,采取一個類廣度優先遍歷的算法來完成此任務。
思路二(origin:cat):按分類進行抓取。注意到,維基百科上,分類都以Category:開頭,由于維基百科有很好的文檔結構,很容易從任一個分類,開始,一直把其下的所有分類全都抓取下來。這個算法對分類頁面,提取子分類,且并行抓取其下所有頁面,速度快,可以把分類結構保存下來,但其實有很多的重復頁面,不過這個可以后期寫個腳本就能很容易的處理。

庫的選擇
開始想用jsdom,雖然感覺它功能強大,但也比較“重”,最要命的是說明文檔不夠好,只說了它的優勢,沒一個全面的說明。因此,換成cheerio,輕量級,功能比較全,至少文檔一看就能有一個整體概念。其實做到后來,才發現根本不需要庫,用正則表達式就能搞定一切!用庫只是少寫了一點正則而矣。

關鍵點
全局變量設定:

var regKey = ['航空母艦','航空母

主站蜘蛛池模板:
虞城县|
聂荣县|
韶关市|
鄱阳县|
游戏|
沙坪坝区|
青阳县|
德格县|
定结县|
措美县|
开封市|
同江市|
邯郸市|
荔波县|
赤峰市|
若尔盖县|
南召县|
科技|
铁力市|
宝丰县|
连城县|
长沙市|
浦北县|
梨树县|
章丘市|
安丘市|
修水县|
吉隆县|
平原县|
鄂托克前旗|
正蓝旗|
济南市|
隆子县|
泉州市|
裕民县|
临桂县|
合江县|
嘉兴市|
彩票|
玉田县|
吉木萨尔县|