Python 保存图片到本地 - requests库方法

import requests

# 网络图片路径为url
url = 'http://img0.dili360.com/pic/2022/01/12/61de8fb1b209e9394355374_t.jpg' 

# 指定图片保存位置在F://App Projects//Spider目录下,设置图片文件名为abc.jpg
path = 'F://App Projects//Spider//abc.jpg'

# 获取url上的图片
r = requests.get(url)

# 创建并打开abc.jpg文件,通过r.content写入url上的图片
with open(path, 'wb') as file:
    file.write(r.content)

# 关闭文件
file.close()

Python中,可以使用多种方式来爬取网页上的图片将其保存本地。通常,这个过程会涉及以下几个步骤: 1. 使用requests获取网页内容。 2. 解析网页内容,找到图片的URL。 3. 再次使用requests下载图片。 4. 将下载图片保存本地文件系统。 以下是一个简单的示例代码,演示了如何实现这个过程: ```python import requests from bs4 import BeautifulSoup # 定义保存图片的函数 def save_image(image_url, local_path): response = requests.get(image_url) if response.status_code == 200: with open(local_path, 'wb') as f: f.write(response.content) print(f"图片保存到:{local_path}") else: print("图片下载失败") # 目标网页URL url = 'http://example.com/' # 发送HTTP请求获取网页内容 response = requests.get(url) # 使用BeautifulSoup解析HTML soup = BeautifulSoup(response.text, 'html.parser') # 查找所有图片标签 images = soup.find_all('img') # 定义图片保存本地路径前缀 local_folder = 'downloaded_images/' # 遍历所有图片标签 for img in images: # 获取图片的URL img_url = img.get('src') # 如果图片URL是完整的URL,则直接使用;否则,拼接完整路径 if not img_url.startswith('http'): img_url = url + img_url # 定义图片本地保存路径 img_name = local_folder + img_url.split('/')[-1] # 调用保存图片的函数 save_image(img_url, img_name) ``` 这段代码首先定义了一个`save_image`函数,用于下载图片保存本地。然后通过requests获取网页内容,用BeautifulSoup解析HTML内容,找到所有图片标签提取出图片的URL。最后,将每个图片下载保存本地路径。 注意,这只是一个基础示例,实际应用中可能需要处理更多的异常情况,比如网络请求失败、图片URL不完整或无法访问等。此外,还需要确保遵守网站的robots.txt规则和版权法律,不要非法爬取和使用网络资源。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值