奇怪的问题~使用http模块抓取时有一定几率抓取到乱码(瓦���·达瓦)
在使用node的http模块抓取网页内容时,相同的页面有时会抓取到乱码,概率大概为1/4 正常内容:瓦伦·达瓦 乱码内容:瓦���·达瓦
求高人解答 ^_^
以下为抓取页面的代码 http.get(page, function(res){ res.on(‘data’, function(data){ html += data; }).on(‘end’, function(){ var $ = cheerio.load(html ,{decodeEntities: false}); … …
4 回复
可能是buffer拼接的问题 https://cnodejs.org/topic/4faf65852e8fb5bc65113403
上文太繁琐。总之三步骤。
var data =[];
on('data',function(trunk){
data.push(trunk)
})
on('end',function(){
data=Buffer.concat(data).toString();
})
@ayiis 非常感谢
@MiguelValentine 简单明了 谢谢!