簡體   English   中英

iter_content() 函數究竟做了什么?

[英]What exactly does iter_content() function do?

剛剛從無聊的自動化書籍中學習了網頁抓取,但我仍然對 iter_content 函數感到困惑? 它實際上是做什么的?

嘗試使用正常下載網頁:

note = open('download.txt', 'w')
note.write(request)
note.close()

但結果與使用不同:

note = open('download.txt', 'wb')
for chunk in request.iter_content(100000):
    note.write(chunk)
note.close()

???

iter_content ( chunk_size=1, decode_unicode=False )

迭代響應數據。 當在請求上設置 stream=True 時,這可以避免將內容一次讀入內存以進行大響應。 塊大小是它應該讀入內存的字節數。 這不一定是返回的每個項目的長度,因為可以進行解碼。

chunk_size 必須是 int 或 None 類型。 None 的值將根據流的值發揮不同的作用。 stream=True 將在數據以接收到的任何大小到達時讀取數據。 如果stream=False,則數據作為單個塊返回。

如果 decode_unicode 為 True,則內容將使用基於響應的最佳可用編碼進行解碼。

鏈接 - http://docs.python-requests.org/en/master/api/

在這種情況下,它將每次以 100000 字節迭代響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM