2014-12-06 17 views
0

我試圖搜索的urllib文件,learnpython版(Subreddit)和這裏。也許我正在搜索不相關的關鍵字。的urllib和保存多個網址不同的文件名

我期待多個URL圖像下載到同一個目錄中,儘管不同的文件名。我怎麼能做到這一點?提供的是適當的摘錄。感謝您的時間!

def downloaddata(): 

    urls = ["url1.gif","url2.gif", "url3.gif","url4.gif"] 
    filepaths = ["samepath/1.gif","samepath/2.gif","samepath/3.gif","samepath/4.gif"] 

    for url in urls: 
     try: 
      image = urllib.URLopener() 
      image.retrieve(url, filepaths) 
      break 
     except ValueError: 
      pass 

回答

1

您可以使用enumerate

for i,url in enumerate(urls): 
    try: 
     image = urllib.URLopener() 
     image.retrieve(url, filepaths[i]) 
    except ValueError: 
     pass 

你還需要從try塊刪除break,如果你想下載的所有圖像,由於打破它出來循環的一個執行後

演示:枚舉給出索引和元素

>>> a = ['a','b','c','d'] 
>>> for i,x in enumerate(a): 
...  print(i,x) 
... 
(0, 'a') 
(1, 'b') 
(2, 'c') 
(3, 'd') 
+0

這個工程,謝謝。你知道爲什麼使用try/except只能下載一個圖像嗎?刪除嘗試和除外後,這工作得很好。 – 3722839 2014-12-06 20:39:33

+0

@ jclark754 try塊,將工作 – Hackaholic 2014-12-06 20:40:47

+0

@刪除'break' jclark754你能接受我的答,如果這個工程 – Hackaholic 2014-12-06 20:42:57

相關問題