如何在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()
它没有报错,也没有保存文件……我刚接触这个,完全不知道哪里出问题了 : |
1 个回答
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'))