基于node.js實現(xiàn)爬蟲的講解
1. cheerio 與 request
- request:模擬客戶端行為,對頁面進行請求
- cheerio:對服務(wù)器端返回的頁面進行解析;
var cheerio = require('cheerio'); var request = require('request'); var startUrl = 'http://www.baidu.com' request(startUrl, function(err, response) { if (err) { console.log(err); } var $ = cheerio.load(response.body); var title = $('title').text(); console.log(title); }
2. 認識 cheerio
獲取 element 位置
通過 class 屬性進行匹配:
var $=cheerio.load('<div class="container"></div>'); $('.container')
取其鏈接:<a class="downbtn" href="http://mov.bn.netease.com/mobilev/2013/1/F/G/S8KTEF7FG.mp4" id="M8KTEKR84" target="_blank"></a>
$('a.downbtn').attr('href')
某一頁面下的全部可鏈接:
var url = var $ = cheerio.load(data); $("a.downbtn").each(function(i, e) { console.log($(e).attr("href")); }); console.log("done"); } else { console.log("error"); }
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
使用Node.js配合Nginx實現(xiàn)高負載網(wǎng)絡(luò)
這篇文章主要介紹了使用Node.js配合Nginx實現(xiàn)高負載網(wǎng)絡(luò),Node的異步加上Nginx的反向代理在性能上實在是給力!需要的朋友可以參考下2015-06-06gulp加批處理(.bat)實現(xiàn)ng多應(yīng)用一鍵自動化構(gòu)建
這篇文章主要給大家介紹了利用gulp加上批處理(.bat)實現(xiàn)ng多應(yīng)用一鍵自動化構(gòu)建的相關(guān)資料,文中介紹的很詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02node.js中的http.response.end方法使用說明
這篇文章主要介紹了node.js中的http.response.end方法使用說明,本文介紹了http.response.end的方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下2014-12-12Node.js中文件系統(tǒng)fs模塊的使用及常用接口
fs是filesystem的縮寫,該模塊提供本地文件的讀寫能力,基本上是POSIX文件操作命令的簡單包裝。這篇文章主要介紹了Node.js中的文件系統(tǒng)fs模塊的使用,需要的朋友可以參考下2020-03-03