Merge pull request #89 from windowsdeveloperwannabe/patch-1

Don't replace existing `http.Client`
This commit is contained in:
Nomadic 2023-05-10 13:50:33 +03:00 committed by GitHub
commit 0f522145f1

View file

@ -118,14 +118,12 @@ func (s *Scraper) SetProxy(proxyAddr string) error {
if err != nil { if err != nil {
return err return err
} }
s.client = &http.Client{ s.client.Transport = &http.Transport{
Transport: &http.Transport{ Proxy: http.ProxyURL(urlproxy),
Proxy: http.ProxyURL(urlproxy), TLSNextProto: make(map[string]func(authority string, c *tls.Conn) http.RoundTripper),
TLSNextProto: make(map[string]func(authority string, c *tls.Conn) http.RoundTripper), DialContext: (&net.Dialer{
DialContext: (&net.Dialer{ Timeout: s.client.Timeout,
Timeout: s.client.Timeout, }).DialContext,
}).DialContext,
},
} }
return nil return nil
} }
@ -141,10 +139,8 @@ func (s *Scraper) SetProxy(proxyAddr string) error {
} }
if contextDialer, ok := dialSocksProxy.(proxy.ContextDialer); ok { if contextDialer, ok := dialSocksProxy.(proxy.ContextDialer); ok {
dialContext := contextDialer.DialContext dialContext := contextDialer.DialContext
s.client = &http.Client{ s.client.Transport = &http.Transport{
Transport: &http.Transport{ DialContext: dialContext,
DialContext: dialContext,
},
} }
} else { } else {
return errors.New("failed type assertion to DialContext") return errors.New("failed type assertion to DialContext")