go语言渐入佳境[53]-爬虫-解决403错误

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

resp,err := http.Get(url)

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

1、查看自己浏览器中的User-Agent 信息。

2、将下面代码

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

替换成下面的代码

client := &http.Client{}
req, err := http.NewRequest("GET", url, nil)
if err != nil {
	log.Fatalln(err)
}

//浏览器中的User-Agent
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()