對於初學者,我是新來的Python,所以我下面的代碼可能不是最乾淨的。對於一個程序,我需要下載約500個網頁。這個url被存儲在一個由前一個函數填充的數組中。下載的部分是這樣的:蟒蛇 - 更快下載〜500個網頁(循環)
def downloadpages(num):
import urllib
for i in range(0,numPlanets):
urllib.urlretrieve(downloadlist[i], 'webpages/'+names[i]'.htm')
每個文件只有20KB左右,但它需要至少10分鐘才能下載所有的人。下載合計大小的單個文件應該只需要一兩分鐘。有什麼方法可以加快速度?由於
編輯:爲了任何人誰是有興趣的,下面的例子在http://code.google.com/p/workerpool/wiki/MassDownloader和使用50個線程,下載時間已經從原來的10分鐘加減少到約20秒。隨着線程增加到60線程左右,下載速度不斷下降,之後下載時間又開始增加。
我沒有說我預計它會採取同樣的時間,只是如果有一個更快的方法 – Tim