Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Что не так со скриптом iogram

Дурачок глупый Ученик (68), на голосовании 2 недели назад
пробую создать первого бота в телеге и застрял чутка
если я пробую использовать команду в боте, вылазит ошибка как на третьем скрине
Голосование за лучший ответ
Sansi Мастер (2246) 1 месяц назад
у тебя сейчас компуктер взорвется
ilya dmitrikov Знаток (497) 1 месяц назад
надо вместо / писать \ в винде
Дурачок глупыйУченик (68) 1 месяц назад
ща попробую
Татьяна Просветленный (36344) 1 месяц назад
Ошибка, которую вы получаете, связана с тем, что система не может найти указанный путь:
 FileNotFoundError: [WinError 3] Системе не удается найти указанный путь: 'C:/Users/Пользователь/Desktop/project/nbot/venv/test' 
1. Неправильный путь:
Проверьте, правильно ли указан путь к папке. В пути у вас есть русские символы ("Пользователь"), что иногда может вызывать проблемы в некоторых системах или библиотеках. Попробуйте использовать английские буквы для пути или убедитесь, что путь полностью правильный.

2. Папка не существует:
Убедитесь, что папка test действительно существует в указанном месте (C:/Users/Пользователь/Desktop/project/nbot/venv/). Если её нет, создайте её вручную или укажите правильный путь.

3. Права доступа:
Убедитесь, что у программы есть права доступа на чтение в эту папку. Иногда проблема может быть связана с ограниченными правами на доступ к файлам или папкам.

4. Отладка с помощью print:
 path = "C:/Users/Пользователь/Desktop/project/nbot/venv/test" 
print(os.listdir(path)) # Проверка содержимого директории
fnaf_file = open(random.choice(os.listdir(path)), 'rb')
Если вы увидите список файлов, значит директория существует. Если снова получите ошибку, возможно, что-то не так с правами или самой директорией.

5. Попробуйте абсолютный путь:
Вы можете попробовать использовать полный абсолютный путь вместо относительного. Это может помочь, если проблема в том, что текущая рабочая директория изменяется в ходе выполнения программы.

 import os 
import random

async def ranphoto(message: types.Message):
path = r"C:/Users/Пользователь/Desktop/project/nbot/venv/test"

try:
# Проверим, существует ли путь
files = os.listdir(path)
if not files:
await message.reply("В папке нет файлов")
return

# Открываем случайный файл
random_file = random.choice(files)
with open(os.path.join(path, random_file), 'rb') as fnaf_file:
await bot.send_photo(message.chat.id, fnaf_file)
except FileNotFoundError:
await message.reply(f"Путь {path} не найден")
except Exception as e:
await message.reply(f"Произошла ошибка: {str(e)}")
Похожие вопросы