當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Request.GetDownloaderID方法代碼示例

本文整理匯總了Golang中github.com/henrylee2cn/pholcus/app/downloader/request.Request.GetDownloaderID方法的典型用法代碼示例。如果您正苦於以下問題:Golang Request.GetDownloaderID方法的具體用法?Golang Request.GetDownloaderID怎麽用?Golang Request.GetDownloaderID使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/henrylee2cn/pholcus/app/downloader/request.Request的用法示例。


在下文中一共展示了Request.GetDownloaderID方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: Download

func (self *Surfer) Download(sp *spider.Spider, cReq *request.Request) *spider.Context {
	ctx := spider.GetContext(sp, cReq)

	var resp *http.Response
	var err error

	switch cReq.GetDownloaderID() {
	case SURF_ID:
		resp, err = self.surf.Download(cReq)

	case PHANTOM_ID:
		resp, err = self.phantom.Download(cReq)
	}

	if resp.StatusCode >= 400 {
		err = errors.New("響應狀態 " + resp.Status)
	}

	if resp.Header.Get("Content-Encoding") == "gzip" {
		var gzipReader *gzip.Reader
		gzipReader, err = gzip.NewReader(resp.Body)
		resp.Body.Close()
		if err == nil {
			resp.Body = ioutil.NopCloser(gzipReader)
		}
	}

	ctx.SetResponse(resp).SetError(err)

	return ctx
}
開發者ID:ReinhardHsu,項目名稱:pholcus,代碼行數:31,代碼來源:downloader_surfer.go


注:本文中的github.com/henrylee2cn/pholcus/app/downloader/request.Request.GetDownloaderID方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。