利用Node的cheerio插件去爬一個網站的新聞,結果發現從中獲得的中文顯示為“?????????20140611????”亂碼,求問如何解決,順便求問不同轉碼格式的知識點;
1 回答

紅糖糍粑
TA貢獻1815條經驗 獲得超6個贊
首先肯定是確定要爬的頁面的編碼。如果是GBK的話就需要對爬過來的文字用iconv庫做轉化,在nodejs中變成UTF8。比如:
var request = require('request'),
cheerio = require('cheerio'),
Iconv = require('iconv').Iconv;
var iconv = new Iconv('GBK', 'UTF-8');
request(opts, function (err, response, body) {
var result = iconv.convert(new Buffer(body, 'binary')).toString();
var $ = cheerio.load(result);
// ......
});
添加回答
舉報
0/150
提交
取消