爬虫01-爬取约会吧图片

本文介绍了一种使用Python的requests和parsel库从百度贴吧抓取图片的爬虫实现方法,详细展示了如何发送请求、解析数据并保存图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import requests
import parsel

page_num = 1
for page in range(0,57000+1,50):
    print("==============正在爬取第{}页=========".format(page_num))
    page_num+=1
    # 1.分析目标网页,确定爬取到url路径, headers参数
    base_url = "https://tieba.baidu.com/f?kw=%E7%BA%A6%E4%BC%9A&ie=utf-8&pn={}".format(page)
    headers = {
        'User-Agent': "User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0"
    }

    # 2.发送请求,requests,模拟浏览器发送请求,获取相应数据
    # 这是一个对象,利用.text来提取其中的数据
    response = requests.get(url=base_url, headers=headers)
    html_str = response.text
    # print(html_str)

    # 3.解析数据 parsel 转化为Selector对象,Selector对象具有xpath的方法,能够对转化的数据进行处理
    html = parsel.Selector(html_str)
    # 这里使用谷歌的请求头一直请求不出内容,换了IE的请求头即可。
    title_url = html.xpath('//div[@class="threadlist_title pull_left j_th_tit "]/a/@href').extract()

    for title in title_url:
        all_url = "https://tieba.baidu.com" + title
        response_2 = requests.get(url=all_url, headers=headers).text
        response_2_data = parsel.Selector(response_2)
        pic_url = response_2_data.xpath(
            '//div[@class="d_post_content j_d_post_content "]/img[@class="BDE_Image"]/@src').extract()
        for pic in pic_url:
            file_name = pic.split('/')[-1]
            img = requests.get(url=pic, headers=headers).content

            # 4.数据保存
            with open('img\\' + file_name, "wb") as f:
                f.write(img)



视频学习地址:https://space.bilibili.com/16682415?spm_id_from=333.788.b_765f7570696e666f.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值