標籤:nodejs 爬蟲 亂碼
上次寫的爬蟲雖然資料爬下來了,但是有亂碼問題。查了相關的書之後,找到解決辦法。重新寫了一下,好像比之前更簡潔了。
解決辦法是:引入iconv-lite模組,用來轉換編碼的網頁內容。
這次跟著書上用了request模組,而不是用原來的http模組。var request = require(‘request‘);var cheerio = require(‘cheerio‘);var iconv = require(‘iconv-lite‘);//部落格標題request({url:‘http://qmkkd.blog.51cto.com/‘,encoding:null},function(err,res,body){if(err) return console.log(err);body = iconv.decode(body,‘gbk‘);//根據網頁內容建立DOM操作對象var $ = cheerio.load(body);//讀取博文類別列表var bloglist = [];$(‘.blogList .artHead h3 a‘).each(function(){var $me = $(this);var name = $me.text().trim();bloglist.push(name);});//輸出結果console.log(bloglist);});
結果如下:
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M01/86/78/wKiom1e_0j2hN9nqAABMpT9qjWk466.jpg" title="QQ20160826132155.jpg" alt="wKiom1e_0j2hN9nqAABMpT9qjWk466.jpg" />
本文出自 “Sunny” 部落格,請務必保留此出處http://qmkkd.blog.51cto.com/9511687/1842930
nodejs單頁面爬蟲(二)--解決編碼問題