最近在做node爬虫的时候,发现axios返回的网页源代码中有中文乱码,看网页的编码方式就知道是gbk编码。 研究了一下,问题解决了,大家共享了不要踩到漏洞。
安装iconv-lite node时,缺省情况下名为$ npm i iconv-lite的模块不支持node专用的字符编码代码(data,'编码) 第一个参数是需要解码的buffer,并且必须是buffer。 第二个参数是使用什么编码方法进行解码,例如utf-8、gbk等。 3358www.Sina.com/,第二个参数是注意,而不是要转换的所需编码类型。 例如,如果将gbk转换为utf-8,则第二个参数需要解码的数据的编码方式将使gbk首先返回axios并将数据格式设置为arraybuffer,然后使用。 我爬取的网页都是gbk码,所以我直接写了应答拦截器,用拦截器处理数据。 也可以在拦截器中添加条件选择,或者直接写在需要转码的地方。 const http=AXO is.create ({ base URL : ` `,response type : ' array buffer ' } ) http.interceptors.response.use