嗨,大家好。我是Python新手,在CentOS上使用Python 2.5。如何使用Python下載文件?
我需要下載像WGET
這樣的文件。
我已經做了一些搜索,並有一些解決方案,一個顯而易見的方法是這樣的:
import urllib2
mp3file = urllib2.urlopen("http://www.example.com/songs/mp3.mp3")
output = open('test.mp3','wb')
output.write(mp3file.read())
output.close()
這工作得很好。但是我想知道,如果mp3文件非常大,比如1Gb,2Gb甚至更大。這段代碼片段仍然可以工作嗎?有更好的方法來下載Python中的大文件,也許有像WGET
這樣的進度條。
非常感謝!
我想你的問題是關於反覆讀,同時寫一大塊,而不是整個文件讀入內存在一次只給它的所有寫出來的之後的磁盤。 – chrisaycock 2010-12-09 21:31:10
可能的重複[流大二進制文件與urllib2文件](http://stackoverflow.com/questions/1517616/stream-large-binary-files-with-urllib2-to-file) – katrielalex 2010-12-09 21:31:27