【Python】使用Python下载指定路径的图片

 背景:有一批图片链接,分为多个组,要把每个图片下载下来,并按照各个组分别存放

import os
import random
import time
import requests
import headers_list
import sqlalchemy
import pandas as pddata_group_name=[]
#图片组的list
data_url=[]
#图片连接的list
data_rank=[]
#每个图片的名称listpath='C:\\Users\\86185\\Documents\\py_down\\'
break_cnt=0
for i in range(len(data_group_name)):if os.path.exists(path+data_group_name[i]):time.sleep(0.01)else:os.mkdir(path+data_group_name[i])#判断路径是否存在,存在就暂停0.01秒,不存在就新建路径path='C:\\Users\\86185\\Documents\\py_down\\'head = random.choice(headers_list.user_agent)#随机选择浏览器头headers = {'User-Agent': head}img_path = path + data_group_name[i] + '\\' + str(data_rank[i]) + '.jpg'#文件路径+文件名if i%100==0:print(i)print(img_path)if os.path.exists(img_path):time.sleep(0.02)else:try:#异常处理主要是防止图片链接访问不了pic = requests.get(data_url[i], headers=headers, timeout=10).content#访问图片链接with open(img_path,'wb') as f:f.write(pic)except:print(data_url[i])#breakhead = random.choice(headers_list.user_agent)headers = {'User-Agent': head}break_cnt=break_cnt+1if break_cnt==100:#失败100次就暂停任务break

几个主要处理:

1、路径&文件名判断,不存在才创建

2、访问图片链接的异常处理,避免因为网络或其他问题的保存就停止,异常处理可以跳过报错的图片,先处理其他的