python爬取网页图片并保存到本地
时间: 2024-10-08 10:17:47 浏览: 95
在Python中,可以使用requests库获取网页内容,BeautifulSoup库解析HTML,然后使用PIL库处理图像,最后将图片保存到本地。以下是简单的步骤:
1. 安装必要的库:
```bash
pip install requests beautifulsoup4 pillow
```
2. 使用示例代码爬取图片:
```python
import os
import requests
from bs4 import BeautifulSoup
from io import BytesIO
def download_images(url):
# 发送HTTP请求获取页面内容
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有img标签
img_tags = soup.find_all('img')
for img_tag in img_tags:
# 获取图片链接
img_url = img_tag['src']
# 下载图片
try:
img_data = requests.get(img_url).content
# 创建文件名,可以根据需求添加日期、哈希等信息
file_name = os.path.join('images', os.path.basename(img_url))
with open(file_name, 'wb') as f:
f.write(img_data)
print(f"图片 {file_name} 已下载")
except Exception as e:
print(f"无法下载图片 {img_url}: {e}")
# 用你要爬取的网址替换下面的url
download_images("http://example.com") # 替换为实际网站URL
阅读全文