From 17c98b1d6296bf1d37f7bf8b74c406ab329ebace Mon Sep 17 00:00:00 2001 From: Igor Vitcovschii Date: Sun, 11 Oct 2020 22:24:03 +0300 Subject: [PATCH] fix invalid base url assignment --- colly.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/colly.go b/colly.go index b5b9f4dc0..3ea7071bb 100644 --- a/colly.go +++ b/colly.go @@ -1057,7 +1057,10 @@ func (c *Collector) handleOnHTML(resp *Response) error { return err } if href, found := doc.Find("base[href]").Attr("href"); found { - resp.Request.baseURL, _ = resp.Request.URL.Parse(href) + baseURL, err := resp.Request.URL.Parse(href) + if err == nil { + resp.Request.baseURL = baseURL + } } for _, cc := range c.htmlCallbacks { i := 0 @@ -1096,7 +1099,10 @@ func (c *Collector) handleOnXML(resp *Response) error { if e := htmlquery.FindOne(doc, "//base"); e != nil { for _, a := range e.Attr { if a.Key == "href" { - resp.Request.baseURL, _ = resp.Request.URL.Parse(a.Val) + baseURL, err := resp.Request.URL.Parse(a.Val) + if err == nil { + resp.Request.baseURL = baseURL + } break } }