@bot.message_handler(content_types=["text"])
def send_photo(message):
if message.text == "Картиночка":
photo = open('C:\Projects\telebot_test_functions\photo' + random.choice(os.listdir('photo')), 'rb')
bot.send_photo(message.chat.id, photo)
File "c:\Projects\telebot_test_functions\testbot.py", line 25, in send_photo
photo = open('C:\Projects\telebot_test_functions\photo' + random.choice(os.listdir('photo')), 'rb')
FileNotFoundError: [WinError 3] Системе не удается найти указанный путь: 'photo'
@bot.message_handler(content_types=["text"])
def send_photo(message):
if message.text == "Картиночка":
img_dir = r'C:\Projects\telebot_test_functions\photo'
images = [os.path.join(img_dir, img) for img in os.listdir(img_dir) if img.endswith('png')]
random_img = random.choice(images)
if random_img:
photo = open(random_img, 'rb')
bot.send_photo(message.chat.id, photo)
else:
bot.send_photo(message.chat.id, "нет картинки")
C:/Mydir/myfile.txt
). random.choice(os.listdir('photo'))
предполагает, что папка photo находится в папке, которая в данный момент для вашего скрипта основная. Но это может быть неожиданно не папка проекта. from pathlib import Path
project_dir = Path('C:\\Projects\\telebot_test_functions\\')
photo_dir = project_dir / 'photo'
photo = open(random.choice([*photo_dir.iterdir()]), 'rb')