2011-05-25 63 views
1

如果您要使用它的URL保存圖像,您會怎麼做?如何在python/django中使用URL保存圖像

另外,如何在保存圖像時給圖像一個唯一的文件名。

response = urllib.urlopen(image_url) 
    file_name = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(10)) 
    f = open('/media/images/temp/'+file_name, "wb") 
    f.write(response.read()) 
    f.close() 

它拋出任何錯誤,也沒有保存該文件...我是新來這個我不知道是怎麼回事錯誤:|

+2

這個問題很含糊。如果你有一個圖像的URL,只需使用'wget'(或urllib,如果在Python中)獲取它。你爲什麼不嘗試*做,然後回過頭來解決你面臨的問題? – 2011-05-25 07:54:56

+0

如果因爲4小時工作而沒有資格嘗試,我不知道會發生什麼。 – Zach 2011-05-25 08:01:10

+0

我會發布我已編碼....請幫忙 – Zach 2011-05-25 08:02:08

回答

5
import urllib 
import string 
import random 
import os 

filename_charset = string.ascii_letters + string.digits 
filename_length = 10 
file_save_dir = '/home/user/download/' 

filename = ''.join(random.choice(filename_charset) 
        for s in range(filename_length)) 

urllib.urlretrieve ("http://www.example.com/image.png", 
        os.path.join(file_save_dir, filename + '.png')) 
+0

終於出現新錯誤 - [Errno ftp錯誤] [Errno 10060]連接嘗試失敗,因爲連接方在一段時間後沒有正確響應,或者由於連接的主機未能響應而導致連接失敗 – Zach 2011-05-25 08:13:03

+3

URL是一個示例。如果你想讓某人爲你編寫一個完整的程序,你應該考慮僱用某人來完成。 – 2011-05-25 08:22:08

+0

它爲不同的URL提供不同的錯誤man ...我不知道該怎麼做。 – Zach 2011-05-25 08:50:37