import os
photo_file_id = []
num = 1
@bot.message_handler(content_types=['photo', 'text'])
def handler_file(message):
user_id = message.from_user.id
data = 1 #Количество фотографий для загрузки
global num
num = 1 #Название фотографии
media = []
photos = message.photo[-1]
photo_file_id.append(photos.file_id) #Добавляем file_id фотографии для скачивания
bot.send_message(user_id, f"Загружено {len(photo_file_id)}/{data} фото \nОсталось загрузить {int(data) - len(photo_file_id)} фото")
if len(photo_file_id) == int(data): #Скачивание всех фотографий начнётся когда количество значений в массиве photo_file_id будет равно количеству фотографий
Path(f'files/{user_id}}').mkdir(parents=True, exist_ok=True)
for photo in photo_file_id:
try:
file_id = photo
file_name = f"files/{user_id}/{num}.jpg"
download_photo(file_id, file_name)
pic = open(file_name, "rb")
media.append(pic)
num += 1
except Exception as e:
print(e)
num = 1
bot.send_message(user_id, "Все фотографии загружены, спасибо!")
#Здесь можно добавить свою логику для отправки сообщений самому главному например:
creators = [] #Тут будут условно id самых главных
for i in creators:
bot.send_media_group(i, media)
os.rmdir(f"files/{user_id}") #В конце удаляем папку чтобы при следующем скачивании не было ошибок