爬取图片

所谓的爬取图片是指我们将某一个网页上的图片全部通过编写python代码保存到我们的电脑上,不用一张张的下载,那样太浪费时间了!!!!

我们知道了用python爬虫来获取图片,那么下面我们先了解一下爬虫的步骤

  1. 找到我们需要爬取的网页的url
  2. 通过python中的第三方模块进行发送请求
  3. 接受服务器给我们反馈回来的数据
  4. 根据我们的需求进行数据解析
  5. 永久性的保存

废话不多说,直接上项目

项目一:爬取有趣图片网上的大陆明星的图片

步骤如下:

1.我们先在浏览器上打开有趣图片网网址:https://www.youqutu/mingxing/dalustar如图所示:

2.我们要下载的是最左侧的图片,我们就需要在网页中找到他们存放的位置,F12查看网页源代码

如图所示:我们要爬取的图片存放在img中,我们知道了图片的位置,那么我们就需要将图片路径解析出来
3.这里呢小编使用的是正则解析。解析出图片路径,我们就要进行保存了。
4.直接上代码:

import requests
import re
import os
if not os.path.exists('./qiutuLibs'):
    os.mkdir('./qiutuLibs')


headers={
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36'
}
url='https://www.youqutu/mingxing/dalustar/list_%s.html'
for i in range(0,20):
    new_url=format(url%i)
    page_text=requests.get(url=new_url,headers=headers).text
    # print(page_text)
    ex='<img class="preview thumb-in" src="(.*?)">'
    img_src_list=re.findall(ex,page_text,re.S)
    print(img_src_list)

    for src in img_src_list:
        img_data=requests.get(url=src,headers=headers).content
        img_name=src.split('/')[-1]
        imgPath='./qiutuLibs/'+img_name
        with open(imgPath,'wb') as fp:
            fp.write(img_data)
            print('下载成功')

运行效果如下

如有不懂之处,欢迎咨询小编,小编将为你耐心讲解!!!!

更多推荐

自学python爬虫的第一天