golang仅支持utf-8, 使用爬虫时经常遇到不是utf-8编码的文件, 如果抓取则会造成文字乱码
1. 下载导入包
import "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. 调用函数(抓到的gbk网页经过转换不再乱码)
result = ConvertToString(html, "gbk", "utf-8")