我们需要先下载两个库,/net/HTML
用于解析网页对应的编码格式,/text
用于将网页对应的编码格式转换为utf8
go get golang.org/x/textgo get golang.org/x/net/HTML
代码如下:
func main() { resp, err := http.Get(url) if err != nil { return nil, err } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { fmt.Errorf("wrong status code: %d",resp.StatusCode) return } bodyReader := bufio.NewReader(resp.Body) e := determineEnCoding(bodyReader) utf8Reader := transform.NewReader(bodyReader,e.NewDecoder()) all, err := IoUtil.ReadAll(utf8Reader) if err != nil { panic(err) } fmt.Print(all)}// 解析编码格式func determineEnCoding(r *bufio.Reader) enCoding.EnCoding { bytes, err := r.Peek(1024) if err != nil { log.Printf("Fetcher error: %v", err) return unicode.UTF8 } e, _, _ := charset.DetermineEnCoding( bytes, "") return e}
总结 以上是内存溢出为你收集整理的GO 获取网页信息时自动转换编码格式全部内容,希望文章能够帮你解决GO 获取网页信息时自动转换编码格式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)