package fetcher import ( "github.com/pkg/errors" "io/ioutil" "log" "net/http" ) func Fetch(url string) ([]byte, error) { resp, err := http.Get(url) if err != nil { panic(err) } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { log.Printf("get error code %v", resp.StatusCode) return nil, errors.New("http get error") } body, err := ioutil.ReadAll(resp.Body) if err != nil { panic(err) } return body, err } // ============================================================== func FetchAddOther(url string) ([]byte, error) { req, err := http.NewRequest(http.MethodGet, url, nil) if err != nil { panic(err) } req.Header.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36") resp, err := http.DefaultClient.Do(req) defer resp.Body.Close() if err != nil { panic(err) } if resp.StatusCode != http.StatusOK { log.Printf("get error code %v", resp.StatusCode) return nil, errors.New("http get error") } body, err := ioutil.ReadAll(resp.Body) if err != nil { panic(err) } return body, err }
转载于:https://my.oschina.net/wgc2010/blog/2248578