node.js http.get请求返回的中文乱码, iconv zlib模块都不好使,求解决!!!
请求的接口是:"http://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv125475&productId=1993092&score=0&sortType=5&page=2&pageSize=10&isShadowSku=0&rid=0&fold=1"
网页显示中文正常,返回来的数据中文乱码
const http=require("http");
const fs=require("fs")
// const cheerio=require("cheerio")
// const iconv=require("iconv");
var url="http://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv125475&productId=1993092&score=0&sortType=5&page=2&pageSize=10&isShadowSku=0&rid=0&fold=1";
http.get(url,function (res) {
var html="";
// iconv.decode(res, 'gb2312')
res.setEncoding("utf-8");
res.on("data",function(chunk){
//console.log(chunk.toString())
html+=chunk;
});
res.on("end",function(){
fs.writeFile("./评价.txt",a,function(){
console.log("完成")
})
});
res.on("err",function(){
console.log(err)
})
})
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
用的
superagent
和superagent-charset
模块。顺着楼主的思路来,对代码进行了微调,主要修改点在用了
iconv-lite
进行了转码操作。代码如下:也可以考虑采用比较简便的版本: