0
我正在尋找重寫一個Python腳本,我已經通過鏈接列表,然後從它獲取的頁面中提取一些日子。限制使用Guzzle/Goutte時的請求大小
出現的一個問題是,如果鏈接是圖像或zip或甚至ISO,我不想下載整個文件。我可以嘗試檢查擴展名,但這並不總是奏效。
在我的Python腳本中,我做了兩件事。
一旦我連接到網站,我檢查內容類型標題。 Python似乎能夠在不下載整個文件的情況下做到這一點。
限制我在我的請求中下載的URL有多少到150kb。由於我只是在HTML頁面之後,所以這會覆蓋它。
我想爲這個項目使用Guzzle,但是查看文檔我不確定這是否可以完成。
我的主要問題是確保我沒有下載ISO文件或視頻並使用所有的RAM或帶寬。
您使用的是什麼版本的Guzzle? Goutte 1.0.6使用3,更高版本至少使用4個。如果您使用的是早期版本,那麼'request.before_send'事件可能會在插件中執行。 – halfer 2015-01-22 20:21:20
如果其他人正在尋找這個功能,似乎有[一些Guzzle事件](https://github.com/guzzle/guzzle3/blob/master/docs/http-client/request.rst#events-emitted-從請求),特別是'curl.callback.progress',這是值得調查的。看起來它需要一個cURL選項來設置事件在下載過程中觸發。 – halfer 2015-03-26 23:09:45
我想我有一個未經測試的解決方案,對於Guzzle 3.如果有人願意,可以在這裏ping我,這樣我就可以快速測試它,因此可以發佈。 – halfer 2015-03-29 16:38:51