Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 19, 2017 17:39:09

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

Привет! Я пишу бота телеграм на питоне. Но у меня возникает ошибка такая: File “CUsers/Aleksandr/Desktop/Bot/main.py”, line 71, in handle_text
img = open(directory + ‘/’ + random_file + ‘rb’)
FileNotFoundError: No such file or directory: ‘CUsers/Aleksandr/AppData/Local/Programs/Python/Python36-32/citati/213.pngrb’

А вот кусок кода отвечающий за это:

elif message.text == ‘Цитату’:
log(message, answer)
directory = ‘CUsers/Aleksandr/AppData/Local/Programs/Python/Python36-32/citati’
all_files_in_directory = os.listdir(directory)
# print(all_files_in_directory)
# for file in all_files_in_directory:
# img = open(directory + ‘/’ + file, ‘rb’)
# bot.send_chat_action(message.from_user.id, ‘upload photo’)
# bot.send_photo(message.from_user.id, img)
random_file = random.choice(all_files_in_directory)
img = open(directory + ‘/’ + random_file + ‘rb’)
bot.send_chat_action(message.from_user.id, ‘upload_photo’)
bot.send_photo(message.from_user.id, img)
img.close()

То что после # - 2 неработающий вариант без рандома.
А вот инпуты:
import telebot
import constants
import os
import random
import urllib.request as urllib2

Что делать? Как пофиксить этот бред?

Офлайн

#2 Апрель 19, 2017 23:10:05

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

оно же вам на “щирій англійскій мові” пишет что нету файла ‘CUsers/Aleksandr/AppData/Local/Programs/Python/Python36-32/citati/213.pngrb’
вот тут img = open(directory + ‘/’ + random_file + ‘rb’) зачем к имени файла добавлять rb? скорее всего вы хотели сделать вот так:
img = open(directory + ‘/’ + random_file, ‘rb’)



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Апрель 19, 2017 23:11:01)

Офлайн

#3 Апрель 23, 2017 19:44:59

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

Спасибо, помогло!

Офлайн

#4 Апрель 23, 2017 21:24:26

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

PEHDOM
оно же вам на “щирій англійскій мові” пишет что нету файла ‘CUsers/Aleksandr/AppData/Local/Programs/Python/Python36-32/citati/213.pngrb’ вот тут img = open(directory + ‘/’ + random_file + ‘rb’) зачем к имени файла добавлять rb? скорее всего вы хотели сделать вот так:img = open(directory + ‘/’ + random_file, ‘rb’)

Извините за оффтоп, но как можно сделать не одну клавиатуру? Вот код для клавиатуры: @bot.message_handler(commands
def handle_text(message):
user_markup = telebot.types.ReplyKeyboardMarkup(True, False)
user_markup.row('***********')
bot.send_message(message.from_user.id, ‘**********’)


У меня есть одна клавиатура в коде, ниже, идентичная, но мне нужна еще одна, как это можно реализовать? Или при вводе одной команды открывается одна клавиатура и т.д., разделить короче их надо, помогите пожалуйста!

Офлайн

#5 Апрель 25, 2017 19:41:38

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

PEHDOM
Поможете?

Офлайн

#6 Апрель 25, 2017 21:36:14

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

Denisins
Поможете?
не совсем понятен вопрос, что в вашем понимании клавиатура? потому как по обрывкам кода непонятно что вы хотите.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#7 Апрель 27, 2017 21:29:28

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

PEHDOM
У меня есть 2 клавиатуры, но мне нужно при получении одного текста, бот “включает” одну клавиатуру, или же другую. Как их разделить? Кстати, на счет переменных, я пишу так

Перед ИФом такое
a = 0

Часть кода:

elif message.text == ‘3’:
bot.send_message(message.chat.id, “Вы выбрали правильный номер!”)
bot.send_message(message.chat.id, “+1 к вашему счету”)
a = a + 1
bot.send_message(message.chat.id, “Ваш счет:”, a)

Переменная не выводится, почему?

Офлайн

#8 Апрель 27, 2017 23:13:36

homura
Зарегистрирован: 2017-04-27
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

пишу ргр python-postgresql, есть 2 таблицы и 2 класса servis и client. таблицы связаны по id customer, нужно как-то увеличить значение visit в customer при добавлении новой записи в servis. прикрепил исходник. если кто может помочь отпишитесь

Прикреплённый файлы:
attachment module2.py (16,3 KБ)

Офлайн

#9 Апрель 28, 2017 19:21:29

Denisins
Зарегистрирован: 2017-04-19
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

homura
пишу ргр python-postgresql, есть 2 таблицы и 2 класса servis и client. таблицы связаны по id customer, нужно как-то увеличить значение visit в customer при добавлении новой записи в servis. прикрепил исходник. если кто может помочь отпишитесь

Создай тему, не мешай тут.

Офлайн

#10 Май 2, 2017 20:20:25

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Бот телеграм, отправка фотографий

Denisins
Переменная не выводится, почему?
да ХЗ, сделайте пример котороый можно запустит и посмотреть глазами на проблему, и оберните его в тег “code python” “/code” чтобы были видны отступы, потому как по вашему описанию непонятно ничего.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version