python中保存网页图片
时间: 2024-12-18 08:31:07 浏览: 7
在Python中,我们可以使用requests库来发送HTTP请求获取网页内容,然后利用BeautifulSoup或其他HTML解析库解析网页结构,定位到图片元素,最后通过os库将图片下载到本地。这里是一个简单的示例:
```python
import os
import requests
from bs4 import BeautifulSoup
def download_web_image(url, save_path):
# 发送GET请求获取网页内容
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 使用BeautifulSoup解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 找到图片标签并提取src属性(假设是img标签)
img_tags = soup.find_all('img')
for img_tag in img_tags:
img_url = img_tag['src']
# 构建完整的图片URL(如果相对路径,加上域名)
full_img_url = url + img_url
# 下载图片
with open(os.path.join(save_path, os.path.basename(img_url)), 'wb') as f:
image_data = requests.get(full_img_url).content
f.write(image_data)
print(f"图片已成功下载至'{save_path}'")
else:
print("请求失败,状态码:", response.status_code)
# 调用函数并传入网页地址和保存路径
url = "http://example.com" # 替换为你想抓取图片的网站URL
save_path = "images" # 图片保存的文件夹名
download_web_image(url, save_path)
```
阅读全文