Попытка отправить все картинки из каталога пользователю бота Telegram - PullRequest
2 голосов
/ 28 апреля 2019

Я пытаюсь отправить все картинки из папки пользователю бота.Вот что я пытался, но он не работает и даже не получает никаких ошибок.

path = '~/Documents/mypath/pics'

files = []
# r=root, d=directories, f = files
for r, d, f in os.walk(path):
    for file in f:
        if '.jpg' in file:
            files.append(os.path.join(r, file))
for f in files:
        telegram_bot.sendPhoto (chat_id, f)

Что здесь не так и как это исправить?

Обновление: Я попытался telegram_bot.sendPhoto(chat_id, open(f , 'rb')), и это сработало, но отправляет одни и те же изображения несколько раз.

1 Ответ

0 голосов
/ 29 апреля 2019

Проблема с этой строкой: telegram_bot.sendPhoto (chat_id, f)

  • Заменить sendPhoto на send_photo.
  • Вам нужно open файл, когда вы хотите отправитьэто.

Вот так:

telegram_bot.send_photo(chat_id=update.message.chat.id, photo=open(f, 'rb'))

Теперь, как вы видите:

works

Это работает, и это только отправляет файлы .jpg.(RickSanchez было png).

...