python实训课堂笔记--爬虫(3)爬取dt网站图片

目录

测试一下能不能拿到图片对应网址:

爬取的图片地址如下:

循环遍历地址下载并保存:


 dt网页:

我们是在该网页里选了一个“壁纸”分类作为单独的网页爬取对象:

 测试一下能不能拿到图片对应为wb:

from urllib import request
from bs4 import BeautifulSoup

headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36'}
url="https://www.duitang.com/category/?cat=wallpaper"
req=request.Request(url,headers=headers)
# 通过req对象发起请求,并获取服务器的响应
resp=request.urlopen(req)
# 获取页面内容
# print(resp.read().decode())

bs=BeautifulSoup(resp.read().decode(),"html.parser")

# 爬取堆糖网站的难点在于找到能对应每一个图片的总标签属性
divs=bs.find_all(attrs={"class": "woo"})
# 循环遍历属性下对应的img标签下对应的每一个图片的地址
for div in divs:
    print(div.find(name="img").get("src"))

 

 爬取的图片地址如下:

​​​​​​​

 

 

循环遍历地址下载并保存:

from urllib import request
from bs4 import BeautifulSoup

headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36'}
url="https://www.duitang.com/category/?cat=wallpaper"
req=request.Request(url,headers=headers)
# 通过req对象发起请求,并获取服务器的响应
resp=request.urlopen(req)
# 获取页面内容
# print(resp.read().decode())

bs=BeautifulSoup(resp.read().decode(),"html.parser")

divs=bs.find_all(attrs={"class": "woo"})
# 想要保存的图片命名方式为img加上每一个图的代号
name="img"
i=0
# 循环遍历属性下对应的img标签下对应的每一个图片的地址src
for div in divs:
    urlimg=div.find(name="img").get("src")
    # 下载图片,urlretrieve()方法直接将远程数据下载到本地,注意桌面上的11597文件夹要自己建立否则会报错文件夹不存在
    request.urlretrieve(urlimg,"C:\\Users\\11597\\Desktop\\11597\\"+name+str(i)+".png")
    # 容易遗忘,让每一个地址所对应的图片都+1
    i=i+1
print("下载结束")

 结果如下:

 贴一个老师的讲解视频:

爬取图片思路

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值