Гоша, огромное спасибо! Я не знаю как ты это делаешь, но более понятного объяснения я еще не встречал. Всё четко, всё понятно с первого раза! Если бы можно было поставить сто лайков, я бы это сделал. Продолжай в том же духе! Тебя ждет успех в сфере преподавания курсов! Удачи тебе! Ещё раз Огромное Спасибо!
Гоша, ты очень круто рассказываешь о программирование, а твои курсы нереально помогают в обучение. Огромное спасибо тебе за то, что ты помогаешь людям обучаться в IT сферах, надеюсь твой канал скоро станет очень популярным! Огромное еще раз спасибо, уроки мегакрутые и понятные!
Спасибо большое. Первый раз написал, некоторые функции не работали, ошибки выдавались. После 2-ого просмотра и переписывания все получилось, заработало🙂
огромное спасибо автору, я обычно пишу на python но не когда не пробовал писать бота телеграм, теперь из за ваших уроков я умею создавать бота. Очень блогодарен автору 👍👍
как сделать что ссылка через кнопку открывалась на телефоне, потому что когда нажимаю открыть на телефоне открывается ссылка на пк а на айфоне не открывается от слова совсем помогите
@@ccGemf Вроде так def on_click(message): if message.text == 'меню': markup = types.InlineKeyboardMarkup() markup.add(types.InlineKeyboardButton('НАЗВАНИЕ КНОПКИ', callback_data='step1')) ### Действие bot.register_next_step_handler(message, on_click)
@@ccGemf Но в этом случаи при выполнении любого действия ниже ( к примеру ниже идет on_click2 ) будет повторяться действие из on_click По крайней мере у меня так
вот с кнопками на 8:15 незадача выходит: "Text buttons are unallowed in the inline keyboard". Хотя коллбэки в них есть. Пришлось заменить на types.ReplyKeyboardMarkup
при такой реализации вывода url кнопок (под поисковой строкой) есть один большой недостаток. Если несколько раз подряд набрать /start, то у тебя внизу будет огромное количество дублирующихся кнопок
Как ознакомительный материал - супер. Как полноценный курс - так себе. Но, в любом случае, спасибо, что делаешь видео для нубов, иначе я бы возможно никогда и не начал писать ботов, а так хоть попробовал.
привет! Спасибо большое, все отлично сработало, и объяснение классное! есть два вопроса: 1. как сделать так, чтобы сразу была кнопка Start в боте, как у тебя в видео? 2. не сработала, когда добавила дополнительный тип файла pdf: ['photo', 'pdf'] это не так делается?
У тебя прога не понимает откуда импортировать модуль types, пропиши перед ним в строке from telebot. Строк аполная так должна выглядеть: From telebot import types
На примере кода в данном видео прописываем строку bot.register_next_step_handler(message, on_click) в конце каждого условия функции on_click, то есть в каждом if и elif
5:12 а вот тут у меня уже проблемка выскакивает: ERROR - TeleBot: "Threaded polling exception: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard" Кто знает как решить, подскажите пожалуйста.
Все очень понятно и подробно рассказываете. Вот у меня только не получается при помощи кнопки удалить фото, пересмотрел, каждую букву просматривал в коде. Что-то не получилось..
Здравствуйте, подскажите. Можно ли как-то создать кнопки в воде текста,чтобы при нажатии на одну,потом на вторую,срабатывали обе? Мне нужно создать бота для беседки,и кнопка будет "забронировать" и "весь список бронирования". Там постараюсь как-нибудь таблицу припечатать с ним😅. Прошу помощи в вопросе. Как и можно ли создать кнопки,которые работают обе и несколько раз
У кого не работают кнопки (вообще не обрабатываются) Убедитесь что вы прописали в конце bot.infinity_polling(allowed_updates=['message', 'callback_query'])
Ошибка вылезает при добавлении строчек - json_dict['inline_keyboard'] = [[button.to_dict() for button in row] for row in self.keyboard] RecursionError: maximum recursion depth exceeded В чем может быть причина?
Гоша привет. Очень крутое видео. Доступно объяснишь. Есть правда вопрос. В самой первой части видео где ты отправляешь картинку и бот принимая ее отвечает "Какое красивое фото".......так вот у меня нет реакцию на эту на это действие...проверил на несколько раз...код такой же....ошибку не выдает.... токен верный.... просто нет реакции и все.. Что бы это могло быть?
Добрый день! Спасибо за видео! Очень полезное! Подскажи, пожалуйста, а если я хочу отправить стикер из какого-либо пака в телеграме, то что я должен сделать? Можно последовательность шагов? не совсем понимаю, как получить путь к стикеру, который лежит на серваке телеграма.
@@Karat3Jlb за неделю я уже приисполнился в написание бота, спасибо за подсказку, но у меня уже выросла 3ья рука, которая помогает писать мне код и 4й глаз, который сразу проверяет код на наличие ошибок
я вообще не пойму почему не получается на втором уроке: кидаю картинку и ничего не происходит в первом занятии все хорошо, возможно что сам PySharm что то не так или дело в том где я сохраняю файлы. запутался
Библиотека постоянно обновляется, нужно читать документацию, у меня всё работает нормально, если ошибка связана с json файлом и парсом кнопки то стоит проверить наличие скобок после объявления типа маркапа
Error: json_dict['inline_keyboard'] = [[button.to_dict() for button in row] for row in self.keyboard] В строчке: bot.reply_to(message, "The photo will be changed!", reply_markup=markup) Есть идеи, почему?
Я так и не понял как решить проблему в функции on_click. Допустим я нажал "перейти на сайт" а после захотел удалить фотку а кнопка уже не работает, что делать :-/
Как мне со 2 урока на 3 перейти? Удалять бота и делать все заново, или отключить первый сценарий и писать второй или как я не понял. Все удалил и написал как в 3 уроке а он связан со вторым.
Не работает InlineKeyboardMarkup, делает кнопку под поиском это может влиять из-за бесплатной версии PyCharm? Написал точь в точь и не работает, есть решение проблемы? А я даун, всё работает, мозг заработал
не очень я понял как работает следующие действие изменено: а уже понял следующие действие после команды старт ведь мы его в блок этой команды помещаем но блин я бы хотел чтоб они постояно работали хотя уверен в следующих уроках будет показано.хотя я думаю можно в методе ван клик вести это команду и передать снова ван клик и тем самым замкнуть цепочку(или просто некст поместить в цыкл ) но я думаю это помешает если я захочу вести другую команду
Помогите пожалуйста, на моменте 8 минут, где кнопки расставить, все делаю как на видео и возникает ошибка RecursionError: maximum recursion depth exceeded Загуглил, ничего не понятно, как быть
Гоша, огромное спасибо! Я не знаю как ты это делаешь, но более понятного объяснения я еще не встречал. Всё четко, всё понятно с первого раза! Если бы можно было поставить сто лайков, я бы это сделал. Продолжай в том же духе! Тебя ждет успех в сфере преподавания курсов! Удачи тебе! Ещё раз Огромное Спасибо!
Гоша, ты очень круто рассказываешь о программирование, а твои курсы нереально помогают в обучение. Огромное спасибо тебе за то, что ты помогаешь людям обучаться в IT сферах, надеюсь твой канал скоро станет очень популярным! Огромное еще раз спасибо, уроки мегакрутые и понятные!
Он и так очень популярен
@@СтасПетуховский много никогда не бывает)))
Как ваше продвижение спустя 9 месяцев в IT?
@@upwithmee уже через 10
Аж голова закипела, красавчик!
Спасибо большое. Первый раз написал, некоторые функции не работали, ошибки выдавались. После 2-ого просмотра и переписывания все получилось, заработало🙂
бесценный материал, выражаю премногую благодарность, и только успехов во всём!))
Огромное спасибо, давно искала такой подробный разбор кода🔥
Два вечера и основная часть бота готова осталось доделать это два вечера и всё, спасибо большое спустя год к счастью ничего не ищменилось
что за бот?
Спасибо большое, за этот прекрасный урок, очень помогло!)
Замечательно объяснено! Спасибо за видео!
Честно говоря я вообще ничего не понял, но на то он и первый раз, второй раз буду более вдумчиво смотреть и повторять. Большое спасибо за курс)
Друг, как успехи? Расскажи, пожалуйста.
Так сначала питон надо выучить. Кто знает питон, тому тут все понятно)
@@РафаилХасанов-м1д теперь всё понятно) (относительно) правда из-за лени я давненько не писал ничего
@@Иван-ф3ъ4ф да даже не обязательно питон, если ты знаешь любой язык программирования, то здесь все будет понятно
@@Иван-ф3ъ4ф,нууууууу))) Я бы поспорила😂
С эмодзи, убил просто 🤣🤣🤣 Я сижу и думаю, а что там сложного :)))), даже телек убавил😂
огромное спасибо автору, я обычно пишу на python но не когда не пробовал писать бота телеграм, теперь из за ваших уроков я умею создавать бота. Очень блогодарен автору 👍👍
как сделать что ссылка через кнопку открывалась на телефоне, потому что когда нажимаю открыть на телефоне открывается ссылка на пк а на айфоне не открывается от слова совсем помогите
хаххпхп
ты че
там опен веб браузер
Раздел бараузер удаляй и всё
@@mrx_0712 можно подробнее пожалуйста, не могу разобраться
Спасибо большое за новые знания!
Спасибо за урок 🙏 Подскажите, пожалуйста, чем заменить on_click, чтобы работали все кнопки одновременно?
в функцию on_click добавьте bot.register_next_step_handler(message, on_click) в самый конец
@@АлексейПетров-э6чэто как ?
@@ccGemf Вроде так
def on_click(message):
if message.text == 'меню':
markup = types.InlineKeyboardMarkup()
markup.add(types.InlineKeyboardButton('НАЗВАНИЕ КНОПКИ', callback_data='step1'))
### Действие
bot.register_next_step_handler(message, on_click)
@@ccGemf Но в этом случаи при выполнении любого действия ниже ( к примеру ниже идет on_click2 ) будет повторяться действие из on_click
По крайней мере у меня так
спасибо я пишу итоговый проект и мне нужно была идея и ты мне её усовершенствовал.
Хах, та же тема. Удачи с проектом)
Хахаха, за неделю планировал сделать, через два дня понедельник, а у меня ничего не готово)
вот с кнопками на 8:15 незадача выходит: "Text buttons are unallowed in the inline keyboard". Хотя коллбэки в них есть.
Пришлось заменить на types.ReplyKeyboardMarkup
Кросава,уважуха и респект за такой контент!
С меня лайк и подписка;)
У меня почему то кнопки огромными получаются 16:01 ( Я все делал по гайду;(
Поставь ReplyKeyboardMarkup(True)
при такой реализации вывода url кнопок (под поисковой строкой) есть один большой недостаток. Если несколько раз подряд набрать /start, то у тебя внизу будет огромное количество дублирующихся кнопок
почему при использовании webbrowser сайт открыввается на моем пк, а не на пк пользователя, можно пофиксить?
такой же вопрос, помогите пожалуйста с этим
не надо доп библиотеки ставить просто после текста на кнопке: ,url=' ссылка'
Благодарю!👍
Как ознакомительный материал - супер.
Как полноценный курс - так себе.
Но, в любом случае, спасибо, что делаешь видео для нубов, иначе я бы возможно никогда и не начал писать ботов, а так хоть попробовал.
Согласен, с кнопками полный бардак навертел, какие-то ответы налепил, зачем? А кнопки при этом не отображаются, если так делать.
Подскажите, пожалуйста, как сделать так, чтобы при нажатии на встроенную кнопку она меняла 1 на 2, а 2 на 3. И тогда бы получился втроенный кликер.
А какую версию PyCharm ты используешь? Community Edition или профессиональную?
Без разницы
Спасибо. Можно было бы уменьшить пустое место слева, где файлы и папки, чтобы в правом окне помещался код.
9:25 не понял что значит параметр func в декораторе. Это типа если функция без доп. параметров, то она всё равно работала или как?
У меня такая проблема, код работает, но кнопки не появляются, в чём может быть дело?
У меня тоже самое но я не знаю как это исправить
Добавь кнопки,reply_markup = markup не прописал наверное,пересмотри
Не знаю актуально ли, по у тебя два хендлера для команды старт, если ты пишешь его в коде из прошлого урока
Почему у меня в строчке from telebot import types слово types подчёркивает я как ошибка? Кто знает, подскажите пожалуйста.
А как добавить такие кнопки на сообщение но без reply_to, а сразу привязать кнопки на send_message
привет! Спасибо большое, все отлично сработало, и объяснение классное!
есть два вопроса:
1. как сделать так, чтобы сразу была кнопка Start в боте, как у тебя в видео?
2. не сработала, когда добавила дополнительный тип файла pdf: ['photo', 'pdf']
это не так делается?
Try to use 'document' as a type instead of pdf. I believe it should work
18:30 а как сделать наоборот чтоб и другие кнопки работали без рестарта
У меня в сообщении имееться фото и после нажатия на кнопку сообщения не меняеться и вылазит куча ошибок
ребята что делать у меня пишет module ‘types’ has no attribute ‘InlineKeyboardMarkup’
Че то с функцией кнопки наверно
У тебя прога не понимает откуда импортировать модуль types, пропиши перед ним в строке from telebot. Строк аполная так должна выглядеть:
From telebot import types
У меня данная проблема: NameError: name 'on_click' is not defined не знаю что с этим делать, помогите пожалуйста.
Вопрос, а как сделать так, что бы кнопки на клавиатуре всегда срабатывали?
На примере кода в данном видео прописываем строку bot.register_next_step_handler(message, on_click) в конце каждого условия функции on_click, то есть в каждом if и elif
5:12 а вот тут у меня уже проблемка выскакивает: ERROR - TeleBot: "Threaded polling exception: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard"
Кто знает как решить, подскажите пожалуйста.
Посмотрите внимательно код из видео!
Как одной командой, к примеру /start чтобы он отправил фото и текст одним сообщением ?
просто бест оф зе бест, спасибо оггромное
А есть метод чтобы отправлял фото с описанием?
А мы можем пользователю отправить gps координаты?
А с чем может быть связана проблема при получении колбэка?
У меня бот не отвечает на колбэк
Гоша, как сделать что бы не переносило на какой то сайт, а при нажатии на кнопку бот писал заданный в программе текст?
Все очень понятно и подробно рассказываете. Вот у меня только не получается при помощи кнопки удалить фото, пересмотрел, каждую букву просматривал в коде. Что-то не получилось..
А как сделать, чтобы при нажатии кнопки /start сразу прихожило сообщение со встроенной кнопкой?
Вообще, она появляется при первом запуске бота. Чтобы она появилась снова, придется удалять чат, и снова его запускать
Здравствуйте, подскажите. Можно ли как-то создать кнопки в воде текста,чтобы при нажатии на одну,потом на вторую,срабатывали обе? Мне нужно создать бота для беседки,и кнопка будет "забронировать" и "весь список бронирования". Там постараюсь как-нибудь таблицу припечатать с ним😅. Прошу помощи в вопросе. Как и можно ли создать кнопки,которые работают обе и несколько раз
вопрос, у меня получилось отправлять картинку после команды /start, как отправлять картинку после нажатия на кнопку?
очень круто
У меня ошибка в декорате 14:04 минута….
Здравствуйте есть вопрос: как сделать так чтобы таблички работали всегда а не один раз 18.20
решил?
Спасибо большое за урок. Отлично рассказываешь, но можете объяснить, почему при правильном написании кода кнопка не появилась?
У кого не работают кнопки (вообще не обрабатываются)
Убедитесь что вы прописали в конце
bot.infinity_polling(allowed_updates=['message', 'callback_query'])
Спасибо большое друг, помог, никак не мог понять почему не работают кнопки даже gpt ответа не смог дать
Зачем нужна этот аргумент "func=lambda callback: True"?
Привет, как сделать так чтобы бот отправлял анимационные емодзи ( custom emoji ) из определенного стикерпака? Те которые в телеграм премиум
Добрый день, подскажите пожалуйста, а если мне нужно очистить всю переписку? Что мне прописать message_id?
А какой сделать так чтобы кнопки в мень всегда срабатывали, А не только по нажатию /start
нашел ответ?
@@rakbladsvalsen218 нет
Ошибка вылезает при добавлении строчек - json_dict['inline_keyboard'] = [[button.to_dict() for button in row] for row in self.keyboard] RecursionError: maximum recursion depth exceeded В чем может быть причина?
У меня тоже, как решил?
Почему то у меня в функции гет_фото юрл и колбек_дата ошибку дают
как получить айди сообщения в функции forward message? я пытался сделать а не могу
Вопрос: а это всё делается в предыдущем файле? С предыдущим кодом?
Гоша привет. Очень крутое видео. Доступно объяснишь. Есть правда вопрос. В самой первой части видео где ты отправляешь картинку и бот принимая ее отвечает "Какое красивое фото".......так вот у меня нет реакцию на эту на это действие...проверил на несколько раз...код такой же....ошибку не выдает.... токен верный.... просто нет реакции и все.. Что бы это могло быть?
Все. Спасибо. Нашел ответ))). Видео зачет. спасибо.
@@bronislav_druker как ты это решил? у меня не чего не получается хоть ошибок нет
@@Loll1xxпривет! Получилось решить?
Что делать если другой пользователь в телеграмм переходит на сайт, а переходит на сайт тот у кого запущен бот?
Гоша, спасибо за урок, но не мог бы ты подсказать, какой метод нужно прописать чтобы полностью сменитть язык бота?
Хочу задать вопрос. Почему у меня кнопки не работают ?
Гоша, а у тебя премиум Телега? Просто я не вижу команды "Очистить чат", можно только удалить бота(
А что если при попытке отправить видео пишет огромный лог ошибок
У меня не появились кнопки при написании ReplyKeybordMarkup()
Тоже самое
16:00 почемуто мои кнопки не вышли как надо они закривают пол екрана в телефоне
У меня тоже
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
Добрый день! Спасибо за видео! Очень полезное!
Подскажи, пожалуйста, а если я хочу отправить стикер из какого-либо пака в телеграме, то что я должен сделать? Можно последовательность шагов? не совсем понимаю, как получить путь к стикеру, который лежит на серваке телеграма.
Скачай его)
Вопрос вот пока бот работает только когда запущен пайчарм это же в дальнейшем должно на сервер перейти, чтоб бот постоянно работал ?
Да
Подскажите, как сделать кнопку, которая открывает меню из кнопок?
В фазерботе команда /setcommands
@@Karat3Jlb за неделю я уже приисполнился в написание бота, спасибо за подсказку, но у меня уже выросла 3ья рука, которая помогает писать мне код и 4й глаз, который сразу проверяет код на наличие ошибок
я вообще не пойму почему не получается на втором уроке: кидаю картинку и ничего не происходит в первом занятии все хорошо, возможно что сам PySharm что то не так или дело в том где я сохраняю файлы. запутался
почему используем просто open, а не with, который сам потом файл закрывает? это просто не в рамках видео, или чисто у такого решения есть причины?
а как сделать чтобы все кнопки сращу работали где on_click
о, у меня тоже проблема с on_click, вот в этой строке:
bot.register_next_step_handler(message, on_click)
спасибо за видео
почему-то не получается с ссылкой подскажите что можно сделать?
Как сделать так,чтобы когда жмешь на кнопку там были только цифры?????????
Привет, как относишься к Роману Сакутину?
если у кого то кнопки большие - измените этот строчек вот так : markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
от души, сработало
😍
Спасибо большое
Что делать если пишет что inlineKeyboardButton не имеет атрибута 'send_message'?
Напиши с большой буквы Inline
@@wation5325 Inline и так с большой буквы вроде
Нашёл решение? Скажи, если нашёл
@@xForNeonShadowа ты нашел?😂
@@gongapshev_11_73 нет(
С мэркапом ошибки постоянно...
Согласен мне vs code вообще ошибку 409 выдает
Библиотека постоянно обновляется, нужно читать документацию, у меня всё работает нормально, если ошибка связана с json файлом и парсом кнопки то стоит проверить наличие скобок после объявления типа маркапа
Помогите если решили, плиииз😅😅
@@scheme_academy1 а какая у тебя ошибка?)
@@vvvv5343программировать нужно в пучарме, а не в вск.
Подскажи пожалуйста что мне делать
Error: json_dict['inline_keyboard'] = [[button.to_dict() for button in row] for row in self.keyboard]
В строчке: bot.reply_to(message, "The photo will be changed!", reply_markup=markup)
Есть идеи, почему?
ага, та же фигня((
Получилось вылечить?
Такая же хрень, помогите😅😅
питон версия какая?
почему у меня бот не отвечает на кнопки, и вместо кнопок под его сообщением кнопки появляются вместо клавиатуры?
Георгий, почему у тебя кнопочки получились такие аккуратные, а у меня вроде расположение такое же, но они *огромные* ??? (!)
Потому что версии телеги меняются- соответственно и вид интерфейса, думаю размер можно поменять, но нужно покопаться в исходном коде и документации.
Не работают кнопки удалить фото и изменить текст что делать (код правильно написан)
почему не работает callback сделал все как надо , и перепробывал все но не работаеот он
а как сделать так, чтоб при команде start выходили кнопки, а не при отправке фото выходили эти кнопки
просто кнопки нужно создать в функции start
@@wamkay пробовал, не работает, можешь подсказать по-братски?
Я так и не понял как решить проблему в функции on_click. Допустим я нажал "перейти на сайт" а после захотел удалить фотку а кнопка уже не работает, что делать :-/
в функцию on_click добавьте bot.register_next_step_handler(message, on_click) в самый конец
@@АлексейПетров-э6ч Он пишет что message не определён, почему так?
@@АлексейПетров-э6ч а почему бот перестал читать другие функции? (я все уроки пишу в одном коде)
Как мне со 2 урока на 3 перейти? Удалять бота и делать все заново, или отключить первый сценарий и писать второй или как я не понял. Все удалил и написал как в 3 уроке а он связан со вторым.
Не надо ничего удалять просто дополняй проект новыми блоками
Не работает InlineKeyboardMarkup, делает кнопку под поиском это может влиять из-за бесплатной версии PyCharm? Написал точь в точь и не работает, есть решение проблемы?
А я даун, всё работает, мозг заработал
Как пофиксил?
Та же беда…
фиксанул?
@@ya1igrayo2v3igri
@@ya1igrayo2v3igri да
А как сохранить фото, которые ты отправил в бот? Например, в корневую папку проекта, чтобы это фото потом обрабатывать
# Скачиваем фото
photo_info = message.photo[-1]
# Получаем идентификатор
file_id = photo_info.file_id
# Запрашиваем путь к файлу
file_object = bot.get_file(file_id)
# Получаем содержимое
file_bytes = bot.download_file(file_object.file_path)
target_file_name = f'out_1.jpg'
# Записываем на диск
with open(target_file_name, 'wb') as writer:
writer.write(file_bytes)
не очень я понял как работает следующие действие
изменено:
а уже понял следующие действие после команды старт ведь мы его в блок этой команды помещаем но блин я бы хотел чтоб они постояно работали хотя уверен в следующих уроках будет показано.хотя я думаю можно в методе ван клик вести это команду и передать снова ван клик и тем самым замкнуть цепочку(или просто некст поместить в цыкл ) но я думаю это помешает если я захочу вести другую команду
Помогите пожалуйста, на моменте 8 минут, где кнопки расставить, все делаю как на видео и возникает ошибка RecursionError: maximum recursion depth exceeded
Загуглил, ничего не понятно, как быть
gpt😆
почему при использовании webbrowser сайт открывается на моем пк, а не на пк пользователя?
если вы уже разобрались с этой проблемой не могли бы подсказать как ее решить?
@@user-gd4fq8ni4n вроде как не разобрался
А у смайлика или эмодзи есть какой-то буквенный код? Не пойму как это работает копирование в программу редактора.
Да, загугли. Или можешь через библиотеку pythonji
@@0_mxd_0 со смайликами и эмодзи разобрался, оказалось, как я и думал. А стикеры также работают?
Думаю через html как-то можно передать
есть библиотека emoji
У меня 2 кнопки не работают дедейт и едитх не знаю почему 😢
Какая версия питона?
Денег нету, курсы Гоши не куплю, учусь на ютубе
Да, и я на Ютубе + документация + другие сайты. Для старта Гоша помог, спасибо)))
+
Да вы чего? Код )
Лучший!