记录一下使用 node
写的爬虫
使用 request
模块处理 HTTP
请求
1 2 3 4 5 6 7 8 9 10
| request({ url: "https://www.dark-wing.com/", method: "GET" }, (e, r, b) => { if(e || !b) {return;} })
|
cheerio
模块则是在服务器端像使用 jQuery
一样操作 DOM
结构
1 2 3 4 5 6 7 8 9 10 11 12 13
| const $ = cheerio.load(b);
let result = [];
let titles = $('a.post-title','.container');
for(var i = 0; i < titles.length; i++) { let title = titles[i].children[0].data; result.push(title); }
|
最后引入 node
内置的 fs
模块,提供本地文件的读写能力
1
| fs.writeFileSync("result.json", results);
|
中间如果需要的话再处理一下爬下来的内容,比如删删空格换行什么的
最后 node crawler
完成