在使用goquery爬取数据时遇到编码格式为GBK的html,在整理数据时发现数据乱码,经过gayhub查找到了对应的转码包,只需要通过简单的一个函数就能进行转码,非常好用,因此记录一下,具体使用方法如下
1.引入转码包
go get github.com/axgle/mahonia
2.编写转码函数
func ConvertToString(src string, srcCode string, tagCode string) string {
srcCoder := mahonia.NewDecoder(srcCode)
srcResult := srcCoder.ConvertString(src)
tagCoder := mahonia.NewDecoder(tagCode)
_, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
result := string(cdata)
return result
}
3.调用函数进行转码
ConvertToString( string, "gbk", "utf-8")