直接用 iconv-lite 模块进行转码
var iconv = require('iconv-lite');
var request = require("request");
//文档分析
var cheerio = require("cheerio");
用 http 模块:
http.get(url, function(sres) {
var chunks = [];
sres.on('data', function(chunk) {
chunks.push(chunk);
});
sres.on('end', function() {
// 将二进制数据解码成 gb2312 编码数据
var html = iconv.decode(Buffer.concat(chunks), 'gb2312');
var $ = cheerio.load(html, {decodeEntities: false});
var ans = $('.table_text td a').eq(0).html();
res.send(ans);
});
});
用 request 模块:
request({
url: url,
encoding: null // 关键代码
}, function (err, sres, body) {
var html = iconv.decode(body, 'gb2312')
var $ = cheerio.load(html, {decodeEntities: false});
var ans = $('.table_text td a').eq(0).html();
res.send(ans);
});