我正试着从Google趋势中获取一些信息。但是每次我尝试获取一些数据时,我都会收到太多的请求。其他网站都没问题。
我的代码:
func Teste(searchTrend string) {
searchTrend = strings.Trim(searchTrend, " ")
searchTrend = strings.Replace(searchTrend, " ", "%20", -1)
linkTrends := ("https://trends.google.com.br/trends/explore?geo=BR&q=" + searchTrend)
c := colly.NewCollector()
c.SetRequestTimeout(120 * time.Second)
c.OnRequest(func(r *colly.Request) {
fmt.Println("Scraping:", r.URL)
})
c.OnResponse(func(r *colly.Response) {
fmt.Println("Status:", r.StatusCode)
})
c.OnError(func(r *colly.Response, e error) {
log.Println("error:", e, r.Request.URL, string(r.Body))
})
c.OnHTML("div.widget-template", func(h *colly.HTMLElement) {
...
})
c.Visit(linkTrends)
}错误:这是个错误。
很抱歉,你最近给我们的要求太多了。请稍后再试。我们只知道这些。
发布于 2022-11-18 13:49:10
你的代码看上去不错。然而,Google通常会阻止来自不可信来源的爬行活动,这就是为什么它返回429个请求太多的原因。
你可以在那里找到一些工具,让你注册和爬行他们的趋势。一个例子可以是这。
要检查您的解决方案的好处,尝试刮另一个网站,它应该像预期的那样工作。
https://stackoverflow.com/questions/74480550
复制相似问题