lbl8029 发表于 2021-6-21 00:32

爬取某站图片时图片保存不到文件夹里

本帖最后由 lbl8029 于 2021-6-21 00:35 编辑

首先本人是python新手,看视频学习爬取,图片是爬取下来了,文件夹也自动建立了,图片也下来了,可就是不保存到文件夹里,研究了半天也没看明白,请各位大神给看一眼。
下面是代码:
import requests
import re
import os
for i in range(1,3):
    if not os.path.exists('./彼岸汽车图片%d'%i):
      os.mkdir('./彼岸汽车图片%d'%i)
    if i==1:
      #指定一个url
      url='https://pic.netbian.com/4kqiche/'
    else:
      url='https://pic.netbian.com/4kqiche/index_%d.html'%i
    #UA伪装
    headers={
      'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Safari/537.36'
    }
    #请求网页
    r=requests.get(url=url,headers=headers).text
    #数据分析,使用正则表达式,找到不同点和相同点
    urls='<li><a href=".*?" .*? src="(.*?)" alt=".*?".*?</li>'


    img_list=re.findall(urls,r,re.S)#re.findall查找全部
    n=0
    for img in img_list:   #设置一个img的变量来遍历img_list
      filename=str(n)+'.jpg'
      imgscr='https://pic.netbian.com'+img
      imgpage=requests.get(url=imgscr,headers=headers).content
      imgpath='./彼岸汽车图片%d/'%i+filename
      with open(filename,'wb')as f:
            f.write(imgpage)
      print('正在爬取第%d张图片'%n)
      n+=1
    print('爬取完毕!!!')







hxh-linux 发表于 2021-6-21 00:47

你只是指定了文件名 并没有指定文件夹路径
比如: open("d:/img/"+filename,"wb+")as f

lbl8029 发表于 2021-6-21 00:48

hxh-linux 发表于 2021-6-21 00:47
你只是指定了文件名 并没有指定文件夹路径
比如: open("d:/img/"+filename,"wb+")as f

imgpath='./彼岸汽车图片%d/'%i+filename这个不是文件夹的路径吗

ldx539 发表于 2021-6-21 00:56

 imgpath='./彼岸汽车图片%d/'%i+filename
        with open( imgpath,'wb')as f:
            f.write(imgpage)

你搞乱了,这样修改就可以了

ldx539 发表于 2021-6-21 00:58


imgpath='./彼岸汽车图片%d/'%i+filename
      with open(imgpath,'wb')as f:
            f.write(imgpage)




你搞乱了,这样修改就可以了

ablajan 发表于 2021-6-21 00:59

imgpath='./彼岸汽车图片%d/'%i+filename

经测试,这一行代码是无效的,无任何作用

ablajan 发表于 2021-6-21 01:00

13422490181 发表于 2021-6-21 00:58
imgpath='./彼岸汽车图片%d/'%i+filename
      with open(imgpath,'wb')as f:
            f.write( ...

我试了,还是没作用,图片还是保存到根目录

ablajan 发表于 2021-6-21 01:03

13422490181 发表于 2021-6-21 00:58
imgpath='./彼岸汽车图片%d/'%i+filename
      with open(imgpath,'wb')as f:
            f.write( ...

不好意思,这个代码就成功了

ldx539 发表于 2021-6-21 01:03

ablajan 发表于 2021-6-21 01:00
我试了,还是没作用,图片还是保存到根目录

兄弟,这就是保存到你创建的文件夹路径了,不要只停留在口头上的试,为什么我现在去试了可以呢,

ablajan 发表于 2021-6-21 01:03

      imgpath='./彼岸汽车图片%d/'%i+filename
      with open(imgpath,'wb')as f:
            f.write(imgpage)
页: [1] 2
查看完整版本: 爬取某站图片时图片保存不到文件夹里