golang如何使用代理,捕获网页?

rt

已邀请:

myml - 97后,大二

赞同来自: philosophia14 willian

http包有设置代理的方法http://godoc.ml/pkg/net_http.htm#Transport
如果想使用更高级的代理,比如socks5代理 看官方代理包 https://godoc.org/golang.org/x/net/proxy

sundyli

赞同来自: philosophia14

参考goproxy https://github.com/elazarl/goproxy
以及基于代理的微信公众号爬虫: https://github.com/sundy-li/wechat_spider/

willian - 90后

赞同来自:

2l的答案很有用,官网有介绍代理的

hunterhug - https://github.com/hunterhug年后找工作,准备深飘

赞同来自:

'''
func NewProxyClient(proxystring string) (http.Client, error) {
proxy, err := url.Parse(proxystring)
if err != nil {
return nil, err
}
client := &http.Client{
// allow redirect
CheckRedirect: func(req
http.Request, via []*http.Request) error {
Logger.Debugf("-----------Redirect:%v------------", req.URL)
return nil
},
Transport: &http.Transport{
Proxy: http.ProxyURL(proxy),
},
Jar: NewJar(),
Timeout: util.Second(DefaultTimeOut),
}
return client, nil
}


参考https://www.github.com/hunterhug/go_tool/spider

要回复问题请先登录注册