我在GO中创建了一个URL抓取器,并且有一个要抓取的URL列表.我向每个URL发送http.Get()
个请求,并获得它们的响应.
resp,fetch_err := http.Get(url)
如何 for each Get请求设置自定义超时?(默认时间非常长,这使得我的抓取程序非常慢.)我希望我的抓取程序有一个大约40-45秒的超时时间,之后它应该返回"request timed out",并转到下一个URL.
我怎样才能做到这一点?
我在GO中创建了一个URL抓取器,并且有一个要抓取的URL列表.我向每个URL发送http.Get()
个请求,并获得它们的响应.
resp,fetch_err := http.Get(url)
如何 for each Get请求设置自定义超时?(默认时间非常长,这使得我的抓取程序非常慢.)我希望我的抓取程序有一个大约40-45秒的超时时间,之后它应该返回"request timed out",并转到下一个URL.
我怎样才能做到这一点?
显然,在GO 1.3中,http.Client有超时字段
client := http.Client{
Timeout: 5 * time.Second,
}
client.Get(url)
这对我来说已经成功了.