为什么我不能用urllib.urlretrieve下载图像?

时间:2012-07-03 04:44:59

标签: python

我尝试用

下载Google的徽标
import os, urllib
folderName = 'downloadedImages'
if not os.path.exists(folderName):
  os.makedirs(folderName)
urllib.urlretrieve(https://www.google.com/images/srpr/logo3w.png, './' + folderName + '/')

但是,我收到错误:IOError: [Errno 21] Is a directory: './downloadedImages/'

为什么?

3 个答案:

答案 0 :(得分:2)

由于错误的原因:您在第二个参数中提供的是目录。它必须是本地(目标)文件名。

python docs州(强调我的):

  

第二个参数(如果存在)指定要复制到的文件位置(如果不存在,该位置将是具有生成名称的临时文件)。

答案 1 :(得分:2)

查看文档:{​​{3}}

您需要提供文件名,而不是目录路径:

urllib.urlretrieve("path/to/resource", os.path.join(folderName, "filename.jpg"))

答案 2 :(得分:0)

urllib.urlretrieve()的第二个参数需要文件名而不是目录。