限制HTTP GET 請求中的資料攝取
抓取HTML 頁面時,防止過多的資料擷取至關重要,因為過多的資料檢索可能會影響效率和效能。若要解決此問題,請考慮限制 GET 請求接受的資料量。
解決方案:利用 io.LimitedReader
io.LimitedReader 類型允許開發人員限制從給定資源檢索的資料量。以下是如何實現它:
import "io" // Limit the amount of data read from response.Body limitedReader := &io.LimitedReader{R: response.Body, N: limit} body, err := io.ReadAll(limitedReader)
或者,可以使用io.LimitReader 函數來實現相同的結果:
body, err := io.ReadAll(io.LimitReader(response.Body, limit))
透過指定所需的限制(以位元組為單位), io.LimitedReader 將確保只讀取指定數量的資料。這可以防止應用程式耗盡記憶體或被過多的資料淹沒。
此解決方案允許在網頁抓取或其他基於 HTTP 的操作期間進行更有效率和受控的資料檢索,確保保持效能和可靠性。
以上是如何限制 HTTP GET 請求中的資料擷取以實現高效的 Web 抓取?的詳細內容。更多資訊請關注PHP中文網其他相關文章!