# 页面保存图片:请求页面,先把页面里面的连接保存下来,然后依次请求连接,保存图像的本身
#导入两个包,第一个包是发送http包,第二个包是清洗数据
import requests
from bs4 import BeautifulSoup
url = ''
resp = requests.get(url=url,headers={'User-Agent':'Mozilla/5.0'})
# 调用三方包清洗数据,第一个参数为要清洗的网页源代码。第二个参数为清晰源代码的解析器(一个字不能错这很重要,此解析器不唯一)
s =BeautifulSoup(resp.text,'html.parser')
links =[] #定义空数组用来接收值
d = s.findAll("img",class_="origin_image zh-lightbox-thumb lazy") # .contents属性可以将tag的子节点以列表的方式输出(只能在find方法这里用findAl不能用此方法)
for i in d: #for循环遍历每一行代码
image = i["data-original"] #遍历每一行代码是为了获取代码里面有用的链接
links.append(image) #将链接存入数组
file_name =1 # filename=1是为了给之后下载下来的图片命名
for l in links: #用for循环遍历请求每一个图片的网址
resp = requests.get(url=l,headers={'User-Agent':'Mozilla/5.0'})
if resp.status_code==200: #判断请求的网址返回值是否为200
# print(resp.content),content 这里表示二进制,此处取消注释会显示图片的二进制
with open(file=f'{file_name}.jpg',mode='ab+') as f: #保存图片为jpg格式 在保存文件的时候mode字段都是ab+,b代表二进制a代表追加因为图片太大需要追加写入,爬取文字用a+ 并且后面带编码
f.write(resp.content) #如果是文字则为.text,如果是保存文件则是content
print(f'第{file_name}张图片爬取完成')
file_name +=1 #为了使每个图片的名字不重复
简易爬虫...
于 2023-05-02 19:04:07 首次发布
该文章演示了如何利用Python的requests和BeautifulSoup库抓取网页中的图片链接,并下载图片。首先,发送HTTP请求获取页面内容,然后通过BeautifulSoup解析HTML,找到图片元素,最后请求图片URL并保存图片。
摘要由CSDN通过智能技术生成