def downloadbest(video_urls, title, continuar=False):
logger.info()
# Le da la vuelta, para poner el de más calidad primero ( list() es para que haga una copia )
invertida = list(video_urls)
invertida.reverse()
for elemento in invertida:
# videotitle = elemento[0]
url = elemento[1]
logger.info("Descargando opción " + title + " " + url.encode('ascii', 'ignore'))
# Calcula el fichero donde debe grabar
try:
fullpath = getfilefromtitle(url, title.strip())
# Si falla, es porque la URL no vale para nada
except:
import traceback
logger.error(traceback.format_exc())
continue
# Descarga
try:
ret = downloadfile(url, fullpath, continuar=continuar)
# Llegados a este punto, normalmente es un timeout
except urllib2.URLError, e:
import traceback
logger.error(traceback.format_exc())
ret = -2
# El usuario ha cancelado la descarga
if ret == -1:
return -1
else:
# El fichero ni siquiera existe
if not os.path.exists(fullpath):
logger.info("-> No ha descargado nada, probando con la siguiente opción si existe")
# El fichero existe
else:
tamanyo = os.path.getsize(fullpath)
# Tiene tamaño 0
if tamanyo == 0:
logger.info("-> Descargado un fichero con tamaño 0, probando con la siguiente opción si existe")
os.remove(fullpath)
else:
logger.info("-> Descargado un fichero con tamaño %d, lo da por bueno" % tamanyo)
return 0
return -2
downloadtools.py 文件源码
python
阅读 26
收藏 0
点赞 0
评论 0
评论列表
文章目录