Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
リモートサーバー上のファイルのサイズは通常、content-lengthヘッダーによって報告されますが、信頼性はありません。欠落している場合もあれば、誤って報告されている場合もあります。コードがURLをダウンロードする必要があるかどうかを判断するために、このヘッダーだけに依存したくありません。
ダウンロード時にファイルのサイズを監視し、最大サイズを超えた場合にダウンロードを終了する方法はありますか?
実行できるのは、必要な最大ファイルサイズを読み取り、もう一度読み取りを実行して、読み取るバイトがまだあるかどうかを確認することです。このような:
resp = urllib2.urlopen('http://www.google.com') file_read = resp.read(max_wanted_size) if resp.read(1) != '': #file is bigger than expected code