python爬图片报错 [Errno 13] Permission denied: 'D:\\python\\test2'

刚学习python爬取图片,可以下载到脚本所在的目录,但是下载到指定文件夹,总是总是报错,类似权限不足,用管理员模式也不行,请教各位大大,附上代码#coding=utf-... 刚学习python爬取图片,可以下载到脚本所在的目录,但是下载到指定文件夹,总是总是报错,类似权限不足,用管理员模式也不行,请教各位大大,附上代码
#coding=utf-8
import urllib
import re
import os
def getHtml(url):
page = urllib.urlopen(url)
html = page.read()
return html

def getImg(html):
reg = r'src="(.+?\.jpg)" pic_ext'
imgre = re.compile(reg)
imglist = re.findall(imgre,html)
x = 0
path='D:\\python\\test2'
for imgurl in imglist:
urllib.urlretrieve(imgurl,path,'%s.jpg' % x)
x+=1
html = getHtml("http://xxxxxxxx")

print getImg(html)
展开
 我来答
yesyes科
2020-04-08 · TA获得超过2.6万个赞
知道答主
回答量:608
采纳率:0%
帮助的人:10.3万
展开全部

python爬图片报错 [Errno 13] Permission denied: 'D:\\python\\test2',是代码输入错误造成的,解决方法如下:

1、首先在网页上抓取图片时open函数有时会报错,如图。

2、然后,根据提示找到错误代码处进行查看,是open函数出了问题。

3、再仔细看这个部分报错的文件名称,发现有个*号,问题就找出来了。

4、使用.replace('*','')将*号替换,就可以了。

5、然后再次运行该代码,最后,图片抓取完成,就不会再报错了。

shuichengche
2017-06-19
知道答主
回答量:1
采纳率:0%
帮助的人:987
展开全部
urllib.urlretrieve(imgurl,'D:\python\test2\%s.jpg' % x)
原文是文件夹路径,而不是文件路径,文件要下到文件夹里
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳光的雷咩咩
2016-10-28 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7857万
展开全部
测试python在目标路径创建一个文件或文件夹,看是否真是权限问题
更多追问追答
追问
应该不是权限问题,urlretrieve函数不加path路径就可以下载到python文件夹,加上路径就不行,同样在python文件夹下,不知道为什么会出现这个问题?
追答
贴点代码出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式