urllib.urlretrieve(url, file_name)
在允许我的程序前进到下一条语句之前,如何检查是否已完成?
以下面的代码片段为例:
import traceback
import sys
import Image
from urllib import urlretrieve
try:
print "Downloading gif....."
urlretrieve(imgUrl, "tides.gif")
# Allow time for image to download/save:
time.sleep(5)
print "Gif Downloaded."
except:
print "Failed to Download new GIF"
raw_input('Press Enter to exit...')
sys.exit()
try:
print "Converting GIF to JPG...."
Image.open("tides.gif").convert('RGB').save("tides.jpg")
print "Image Converted"
except Exception, e:
print "Conversion FAIL:", sys.exc_info()[0]
traceback.print_exc()
pass
当通过下载 'tides.gif'urlretrieve(imgUrl, "tides.gif")
花费的时间比time.sleep(seconds)
导致空文件或不完整文件的时间长时,Image.open("tides.gif")
会引发一个IOError
(由于潮汐.gif 文件大小为 0 kB)。
如何检查 的状态urlretrieve(imgUrl, "tides.gif")
,让我的程序只有在语句成功完成后才能前进?