91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用Nodejs做一個簡單的小爬蟲

發布時間:2020-07-24 18:27:13 來源:網絡 閱讀:731 作者:tower1229 欄目:開發技術

Nodejs將JavaScript語言帶到了服務器端,作為js主力用戶的前端們,因此獲得了服務器端的開發能力,但除了用express搭建一個博客外,還有什么好玩的項目可以做呢?不如就做一個網絡爬蟲吧。據說互聯網上的流量90%以上都是爬蟲貢獻的,不知道真假,但起碼證明了,爬蟲是一種用途廣泛的東西,尤其在電商比價領域,整個就是爬蟲的技術較量,當然我要做的是爬蟲中的弱雞,只實現基本功能,先上源碼。

 

    下面簡述一下實現過程。首先挑選爬取對象,這里選擇的也是門檻比較低的新聞站cnBeta.com,因為每天上午都要去逛一逛,比較熟悉,為什么說新聞站比較簡單呢,因為通常這類網站不要求用戶登錄,所有爬蟲的請求很容易偽造。

 

    爬蟲的基本思路是,獲取頁面->構造信息選擇器->分析頁面鏈接->獲取相鄰頁面->循環第一步,對于新聞站來說,我們要獲取的就是新聞內容啦,請求到頁面html代碼后,只要從頁面中找到內容容器元素就很容易獲取到新聞內容,下一步是獲取相鄰頁面的地址,cnBeta新聞是有上一頁下一頁鏈接的,但仔細觀察會發現其實使用js動態生成的,這里需要找出js是如何獲取到鏈接的,拿到鏈接我們就繼續獲取下一篇新聞的html代碼,周而復始。

 

    期間肯定不會一帆風順,比如就遇到了301跳轉,好在從請求頭中很容易找到了跳轉目標,發現301跳轉后立即放棄請求重新請求跳轉地址就好了。

 

    另外,爬蟲不能無限制的爬取,否則很容易被封IP,需要設置一個爬取條數的限制。最好再做一個爬取間隔的設置,但這里只用作學習Nodejs,不會大量的爬取,因此也就沒必要做爬取間隔了。

 

    詳細的分析過程見另一篇文章:http://refined-x.com/2017/06/09/Nodejs%E7%88%AC%E8%99%AB%E5%AE%9E%E8%B7%B5%E5%B0%8F%E8%AE%B0/。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

左贡县| 民和| 肃南| 南宫市| 玉山县| 高密市| 城市| 日土县| 雷州市| 穆棱市| 安国市| 小金县| 孟津县| 墨脱县| 柳林县| 定西市| 平顺县| 连江县| 安龙县| 青河县| 广西| 松原市| 庆元县| 聊城市| 大关县| 宁陕县| 那坡县| 沐川县| 招远市| 额济纳旗| 崇礼县| 丰都县| 永修县| 繁昌县| 昆明市| 驻马店市| 宜兴市| 唐山市| 宁陕县| 鄄城县| 永德县|