利用requests,urllib和正则表达式简单爬取贴吧图片

requests和urllib简单爬贴吧图片

1. requests请求网页
2. 利用正则匹配在响应网页的文本内容中捕捉图片的url列表
3. 利用urllib以及获得的url列表下载图片

import re
import os # 创建保存路径
import requests
from urllib import request

if __name__ == '__main__':

    #  请求网页
    response = requests.get('http://tieba.baidu.com/p/5080413304')

    # 针对目标内容解析提取
    sentence = response.text
    pattern = r'"BDE_Image" src="(.+?)"'  # 加括号后只返回分组匹配到的内容
    url_list = re.findall(pattern, sentence)  # 返回一个url列表

    # 创建保存路径
    if not os.path.exists('pictures'):
        os.mkdir('pictures')

    # 操作
    if not os.path.exists('pictures'):
        print('开始下载,共%d张图片需要下载' % len(url_list))
        x = 1
        for url in url_list:
            print('正在下载第%d张图片' % x)
            request.urlretrieve(url, os.path.join('pictures', 'pic%d.png' % x))
            x += 1
        print('下载完成')
    else:
        print('已经存在')


版权声明:本文为a739260008原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。