Python 2.7 下载图片

Python 2.7 download images

我正在使用 python 2.7,pycharm 是我的编辑器。我想要做的是让 python 访问一个站点并从该站点下载图像并将其保存到我的目录中。目前我没有错误,但我不认为它正在下载,因为该文件没有显示在我的目录中。

import random
import urllib2

def download_web_image(url):
    name = random.randrange(1,1000)
    full_name = str(name) + ".jpg"
    urllib2.Request(url, full_name)

download_web_image("www.example.com/page1/picture.jpg")

这样就可以了。其余的可以保持不变,只需编辑您的函数以包含我添加的两行。

def download_web_image(url):
    name = random.randrange(1,1000)
    full_name = str(name) + ".jpg"
    request = urllib2.Request(url)
    img = urllib2.urlopen(request).read()
    with open (full_name, 'w') as f: f.write(img)

编辑 1:

评论中要求的确切代码。

import urllib2

def download_web_image(url):
    request = urllib2.Request(url)
    img = urllib2.urlopen(request).read()
    with open ('test.jpg', 'w') as f: f.write(img)

download_web_image("http://upload.wikimedia.org/wikipedia/commons/8/8c/JPEG_example_JPG_RIP_025.jpg")

您只是在创建 Request 但并未下载图像。请尝试以下操作:

urllib.urlretrieve(url, os.path.join(os.getcwd(), full_name)) # download and save image

或尝试请求库:

import requests

image = requests.get("www.example.com/page1/picture.jpg")
with open('picture.jpg', 'wb') as f:
    f.write(image.content)