golang 爬虫 403

以下,我直接用http.Get(url)进行获取信息,用浏览器能够对该URL进行访问,但是爬取时则返回403,禁止访问html

resp,err := http.Get(url)

解决方案:模拟浏览器访问:浏览器

一、查看本身浏览器中的User-Agent 信息。url

二、将下面代码spa

resp,err := http.Get(url)
	defer resp.Body.Close()

替换成下面的代码3d

client := &http.Client{}
	req, err := http.NewRequest("GET", url, nil)
	if err != nil {
		log.Fatalln(err)
	}
	req.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36")

	resp, err := client.Do(req)
	if err != nil {
		log.Fatalln(err)
	}

	defer resp.Body.Close()