我一直在努力構建一個能夠生成文件校驗和的網絡爬蟲。我不想爲無限流(Internet廣播,實時視頻提要等)生成校驗和,因爲它會掛起爬蟲並最終導致內存不足。因此,我需要一種方法來過濾掉這些。無限長內容長度的測試
我試着檢查content-length
是否設置爲-1,因爲流媒體不報告內容長度,但發現許多其他服務器選擇不報告其文檔上的內容長度,或使用不報告的漸進式下載內容長度。我目前的解決方案是檢查content-type
是video/*
還是audio/*
和content-length
是-1,但這有可能會丟棄逐漸下載的不具有無限長度的媒體文件。
有沒有一種簡單的方法來測試流是無限長的,而不是通過檢查它是否超過任意值?這個項目的語言是Java和JSoup,只要它很重要。
不太清楚,但是當有一個流反應 - 你沒有得到的響應結束,而只是向您發送數據,以便可以使用相同的響應對象發送更多流數據。你可以嘗試檢查,如果響應已經結束,在有限長度媒體的情況下應該是真的 – prabodhprakash
@prabodhprakash請原諒我,如果我沒有理解這一點,但如果數據不斷出現(如無限流),我將如何知道它不會結束? – ndm13