0

我试图下载谷歌的标志

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/'

为什么?

4

3 回答 3

2

因为正是错误所说的:您在第二个参数中提供的是一个目录。它必须是本地(目标)文件名。

python 文档状态(强调我的):

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

于 2012-07-03T04:49:33.990 回答
2

检查文档:http ://docs.python.org/library/urllib.html#urllib.urlretrieve

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

urllib.urlretrieve("path/to/resource", os.path.join(folderName, "filename.jpg"))
于 2012-07-03T04:49:34.383 回答
0

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

于 2012-07-03T04:49:47.657 回答