@qwwwwwty

Как сохранять файл с разными названиями Aiogram Python?

Как сохранять файл с разными названиями Aiogram Python? У меня уже есть код, который сохраняет файл с основным названием, но мне нужно сделать так, что бы файл, скажем так, имел линейку (нумирацию) при сохранении. Например: photo_01.jpg, photo_02.jpg и тп.

@dp.message_handler(content_types=["photo"])
async def baybay(message):

	connect = sqlite3.connect('INFOBOT.db')
	cursor = connect.cursor()

	file_photo = message.photo[-1].file_id
	idfile = await bot.get_file(file_photo)
    
	filename, file_extension = os.path.splitext(idfile.file_path)
	dowloaded_file_photo = await bot.download_file(idfile.file_path)

	limit = random.randint(1, 200)
	
	src = f"PhotoBase/{message.chat.id}_photobase/" + f"{message.chat.id}" + "_limit_" + f"{limit}" + file_extension
	with open(src, "wb") as new_file:
		new_file.write(dowloaded_file_photo.getvalue())


p.s. я знаю, что random.randint(1, 200) это костыль, и мне нужно его заменить так, что была разная нумирация как в примере, но не знаю как.
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Зачем вы используете f-строку и конкатенацию???
src = f"PhotoBase/{message.chat.id}_photobase/{message.chat.id}_limit_{limit}{file_extension}"

Для нумерации можно использовать БД, куда заносить номер последнего. Либо перед сохранением чекните сколько файлов у вас в папке и исходите от этого
len(os.listdir(dirpath))
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы