请根据如下描述写一段python代码 1、文件test.txt的内容为: https://pixcelcell-glamme-app.s3.us-east-1.amazonaws.com/ai-engine/avatar/202307/1690195044-20268753802.jpg https://pixcelcell-glamme-app.s3.us-east-1.amazonaws.com/ai-engine/avatar/202307/1690195069-92997461737.jpg https://pixcelcell-glamme-app.s3.us-east-1.amazonaws.com/ai-engine/avatar/202307/1690195088-1889167480.jpg 2、打开test文件并把图片下载到本地D:picture文件里
时间: 2023-12-18 20:06:02 浏览: 32
你可以使用 Python 的 `requests` 库来下载图片,并使用文件操作来读取和写入文件。以下是一段代码,根据你的描述实现了这个功能:
```python
import requests
# 文件路径
file_path = "test.txt"
# 图片保存目录
save_directory = "D:/picture/"
# 打开文件并逐行读取图片链接
with open(file_path, 'r') as file:
for line in file:
# 去除行尾的换行符
image_url = line.strip()
# 发送请求并下载图片
response = requests.get(image_url)
if response.status_code == 200:
# 从URL中提取文件名
filename = image_url.split("/")[-1]
# 拼接保存路径
save_path = save_directory + filename
# 写入文件
with open(save_path, 'wb') as image_file:
image_file.write(response.content)
print(f"图片 {filename} 下载成功")
else:
print(f"无法下载图片 {image_url}")
```
在上述代码中,我们先定义了 `file_path` 变量来表示包含图片链接的文本文件路径,以及 `save_directory` 变量来表示图片保存的目录。
然后,我们使用 `with open(file_path, 'r') as file` 打开文件,逐行读取图片链接。对于每个链接,我们发送 GET 请求获取图片内容,并将其保存到本地。我们使用 `requests.get()` 方法发送请求,如果响应状态码为 200,则表示请求成功。我们从链接中提取文件名,并将其与保存目录拼接为完整的保存路径。然后,我们使用 `open(save_path, 'wb')` 打开二进制文件并将响应内容写入文件中。
最后,我们通过 `print()` 函数打印出下载成功或失败的消息。
请确保指定的文件路径和保存目录是正确的,并具有相应的权限。希望这段代码能满足你的需求!