python 已知多张图片网址,下载并保存在一个文件夹中
时间: 2024-12-15 15:20:32 浏览: 3
在Python中,你可以使用requests库来获取网页内容,然后使用BeautifulSoup库解析HTML,找到图片链接。接着,可以利用os模块创建目录以及io模块的BytesIO来临时存储图片,最后使用open()函数将图片数据保存到本地文件。
这是一个简单的示例:
```python
import os
import requests
from bs4 import BeautifulSoup
import io
# 定义目标文件夹路径
save_folder = 'images_downloaded'
# 检查文件夹是否存在,不存在则创建
if not os.path.exists(save_folder):
os.makedirs(save_folder)
# 假设urls是一个包含图片URL的列表
image_urls = [
'http://example.com/image1.jpg',
'http://example.com/image2.png',
# ... 更多图片URL
]
for url in image_urls:
response = requests.get(url)
if response.status_code == 200: # 确保请求成功
soup = BeautifulSoup(response.text, 'html.parser')
img_tag = soup.find('img') # 假设图片在HTML中是以<img>标签形式存在
img_data = io.BytesIO()
img_data.write(response.content) # 获取图像二进制数据
img_data.seek(0) # 将读指针移动到开头以便再次使用
file_name = os.path.join(save_folder, os.path.basename(img_tag['src'])) # 获取图片原始文件名
with open(file_name, 'wb') as f:
f.write(img_data.read())
print(f"图片 {url} 已下载并保存至 {file_name}")
else:
print(f"无法下载 {url}, 状态码: {response.status_code}")
阅读全文