2015-12-22 2 views
0

Я пытаюсь импортировать изображение в папку на моем рабочем столе, но я не знаю, как это сделать, мне очень трудно понять документацию как новичок.Python как импортировать изображение в определенном месте?

Я уже знаю, как загрузить файл, но я не могу его загрузить в определенном месте.

вот что у меня есть

def download_img(url): 
    name = random.randrange(1, 100) 
    full_name = str(name) + ".png" 
    urllib.request.urlretrieve(url, full_name) 

download_img('http://www.mtv.com/crop-images/2013/11/05/the_killers_elle_exclusive_williams_hirakawa.jpg') 

как я могу загрузить изображение на моем рабочем столе, где я должен указать путь?

+0

@soon только что проверили, но он не уточняет, как изменить путь, по которому будет загружаться изображение. – Lindow

+0

Пожалуйста, еще раз взгляните на образец кода № 4 со следующей строкой: 'с urllib.request.urlopen (url) в качестве ответа, open (имя_файла, 'wb') в качестве out_file:'. – soon

+1

@Sia, в ссылке @soon он просто загружает файл и возвращает его содержимое. Абонент должен определить, где его сохранить. Для этого вы, вероятно, будете использовать 'open'. См. Здесь пример http://www.blog.pythonlibrary.org/2012/06/07/python-101-how-to-download-a-file/ – criswell

ответ

2

Попробуйте это:

import urllib.request 
import random 
import os 

def download_img(url, path): 
    name = random.randrange(1, 100) 
    full_name = str(name) + ".png" 
    response = urllib.request.urlopen(url) 
    data = response.read() 
    f = open(os.path.join(path , full_name), 'wb') 
    f.write(data) 
    f.close() 

download_img('http://www.mtv.com/crop-images/2013/11/05/the_killers_elle_exclusive_williams_hirakawa.jpg', '/tmp') 
+0

Спасибо, он отлично работал. – Lindow

1

После будет работать. Протестировано локально.

from urllib import request 

# Name of the file you want to download and eventually the file which will be created on your machine 
filename = "2ixBxKK.jpg" 
response = request.urlopen("http://i.imgur.com/%s" % filename) 

myfile = open("/tmp/%s" % filename, "wb") 
myfile.write(response.read()) 

myfile.close() 
Смежные вопросы