Python - как получить изображения из интернета - PullRequest
2 голосов
/ 20 июня 2011

Как я могу получить изображение с известного URL и сохранить его на моем компьютере с помощью Python (v2.6)? Спасибо

Ответы [ 6 ]

8 голосов
/ 20 июня 2011

Вы можете использовать urllib.urlretrieve.

При необходимости скопировать сетевой объект, обозначенный URL-адресом, в локальный файл.

Пример:

>>> import urllib
>>> urllib.urlretrieve('http://i.imgur.com/Ph4Xw.jpg', 'duck.jpg')
('duck.jpg', <httplib.HTTPMessage instance at 0x10118e830>)
# by now the file should be downloaded to 'duck.jpg'
2 голосов
/ 20 июня 2011

Вы можете использовать urllib.urlretrieve:

import urllib
urllib.urlretrieve('http://example.com/file.png', './file.png')

Если вам нужна большая гибкость, используйте urllib2.

1 голос
/ 20 июня 2011

В отсутствие какого-либо контекста ниже приведен простой пример использования стандартных библиотечных модулей для выполнения неаутентифицированного HTTP-запроса GET

import urllib2
response = urllib2.urlopen('http://lolcat.com/images/lolcats/1674.jpg')
with open('lolcat.jpg', 'wb') as outfile:
    outfile.write(response.read())

РЕДАКТИРОВАТЬ: urlretrieve() является новым для меня. Полагаю, тогда вы могли бы превратить его в однострочник командной строки ... если вам скучно.

$ python -c "import urllib; urllib.urlretrieve('http://lolcat.com/images/lolcats/1674.jpg', filename='/tmp/1674.jpg')"
0 голосов
/ 20 июня 2011

Легко.

import urllib
urllib.urlretrieve("http://www.dokuwiki.org/_media/wiki:dokuwiki-128.png","dafile.png")
0 голосов
/ 20 июня 2011
import urllib2
open("fish.jpg", "w").write(urllib2.urlopen("http://www.fiskeri.no/Fiskeslag/Fjesing.jpg").read())
0 голосов
/ 20 июня 2011

батарей включены в urllib :

urllib.urlretrieve(yourUrl, fileName)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...