python - 图片爬虫时候遇到问题 urllib.request.urlretrieve 下载到指定文件夹不成功?
问题描述
如果下载到D盘也是没有问题的,下载到我建立的目录下就有问题(主要是我想在D盘建立以URL这个问号前面的数字为名字的目录如(http://v.yupoo.com/photos/196...’)中的46975340就是不行,因为有很多链接,每个链接的这个数字不同,我想用这个数字作为文件夹的名字,存放这个链接下载下来的图片)源码如下:import urllib.requestimport reimport os
url_all =[’http://v.yupoo.com/photos/196...’,’http://v.yupoo.com/photos/196...’,’http://v.yupoo.com/photos/196...’,’http://v.yupoo.com/photos/196...’,]
def getHtml(url):
html = urllib.request.urlopen(url).read()return html通过正则获取图片
def getImg(html):
reg = ’src='https://www.haobala.com/wenda/(.+?.jpg)'’imgre = re.compile(reg)imglist = re.findall(imgre,html)
# print(imglist)
return imglist
for i in range(len(url_all)):
循环把图片存到本地html = getHtml(url_all[i])list=getImg(html.decode())print (url_all[1])
x = 0for imgurl in list: print(x) filename = os.path.dirname(url_all[i])filename2 = os.path.basename(filename)os.mkdir(’d:%s’% filename2)
local=’D:%s%s.jpg’ %(filename2,x) print (local) urllib.request.urlretrieve(imgurl,local) x+=1print('done')
执行报错:(win10的64位系统,python3.6)
File 'C:Python36liburllibrequest.py', line 258, in urlretrieve
tfp = open(filename, ’wb’)
FileNotFoundError: [Errno 2] No such file or directory: ’d:469753400.jpg’经测试最后一句这么写是可以输出的: urllib.request.urlretrieve(imgurl,’d:%s.jpg’% str(i*10+x))
经测试 前面两句都没有问题,加第三句: local=’d:%s%s.jpg’ %(filename2,x)
print (local)
urllib.request.urlretrieve(imgurl,local)
报错信息如下: (和上面一样)
File 'C:Python36liburllibrequest.py', line 258, in urlretrieve
tfp = open(filename, ’wb’)
FileNotFoundError: [Errno 2] No such file or directory: ’d:469753400.jpg’
请教给位大大,这个路径到底有什么问题没有?应该怎么写。
问题解答
回答1:在保存之前,先检查一下目录是否存在,不存在则建立
if not os.path.exists(file_path): os.mkdir(file_path)
相关文章:
1. java - 自己制作一个视频播放器,遇到问题,用的是内置surfaceview类,具体看代码!2. javascript - vue 移动端的input 数字输入优化3. 服务器端 - 采用nginx做web服务器,C++开发应用程序 出现拒绝连接请求?4. javascript - 有什么兼容性比较好的办法来判断浏览器窗口的类型?5. 关于docker下的nginx压力测试6. python - pandas按照列A和列B分组,将列C求平均数,怎样才能生成一个列A,B,C的dataframe7. javascript - Angular controlller控制域和原生js的关系8. angular.js - Ionic 集成crosswalk后生成的apk在android4.4.2上安装失败???9. 为什么我ping不通我的docker容器呢???10. css3 - [CSS] 动画效果 3D翻转bug
