re实战之糗图图片分页爬取2

import requests
import re
import os
if __name__ == "__main__":
    # 创建一个文件夹用来保存所有图片
    if not os.path.exists('./qiutulibs'):
        os.mkdir('./qiutulibs')

    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
    }   # UA伪装
    url = 'http://www.qiushidabaike.com/pic_%d'
    # numpage = 2
    for pagenum in range(1,3):
        new_url = url%pagenum
        # 使用通用爬虫对一整张页面数据进行爬取
        page_text= requests.get(url=new_url,headers=headers).text

        # 使用聚焦爬虫将页面中所有的糗图进行爬取
        ex = '<dd class="content content-pic">.*?<img src="(.*?)" alt.*?</dd>' # 正则方式
        img_src_list = re.findall(ex,page_text,re.S) # 正则数据提取
        # print(img_str_list)
        for src in img_src_list:
            #拼接处一个完整的图片url
            src = 'http://www.qiushidabaike.com'+src
            # 获取到图片二进制数据
            img_data= requests.get(url=src,headers=headers).content
            # 生成图片名称
            img_name = src.split('/')[-1]
            img_path = './qiutulibs/'+img_name

            fp = open(img_path,'wb')
            fp.write(img_data)
            print(img_name,'下载成功')

 

posted @ 2020-04-13 16:58  风hua  阅读(175)  评论(0编辑  收藏  举报