HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 23.07.2024, 11:40
P04Emu4Ka
Новичок
Регистрация: 26.10.2022
Сообщений: 15
С нами: 1868981

Репутация: 3
По умолчанию

Python:





Код:
import
logging
from
telegram
import
ForceReply
,
Update
from
telegram
.
ext
import
Application
,
CommandHandler
,
ContextTypes
,
MessageHandler
,
filters
# Включаем логирование
logging
.
basicConfig
(
format
=
'%(asctime)s - %(name)s - %(levelname)s - %(message)s'
,
level
=
logging
.
INFO
)
logger
=
logging
.
getLogger
(
__name__
)
# Список эмодзи, которые нужно удалять
emojis_to_remove
=
[
'🏀'
,
'⚽'
,
'🎲'
,
'🎰'
]
def
delete_emojis
(
update
:
Update
,
context
:
ContextTypes
.
DEFAULT_TYPE
)
-
>
None
:
"""Удаляет сообщения с определенными эмодзи."""
if
any
(
emoji
in
update
.
message
.
text
for
emoji
in
emojis_to_remove
)
:
try
:
context
.
bot
.
delete_message
(
chat_id
=
update
.
message
.
chat_id
,
message_id
=
update
.
message
.
message_id
)
except
Exception
as
e
:
logger
.
error
(
f"Error deleting message:{e}"
)
def
main
(
)
:
"""Запускаем бота."""
# Вставьте сюда ваш токен
application
=
Application
.
builder
(
)
.
token
(
"лол"
)
.
build
(
)
dispatcher
=
Update
.
dispatcher
# Добавляем обработчик сообщений
dispatcher
.
add_handler
(
MessageHandler
(
Filters
.
text
&
~
Filters
.
command
,
delete_emojis
)
)
# Запускаем бота
updater
.
start_polling
(
)
updater
.
idle
(
)
if
__name__
==
'__main__'
:
main
(
)


Выдаёт ошибку:

Traceback (most recent call last):

File "/home/runner/--------------/main.py", line 37, in

main()

File "/home/runner/----------------/main.py", line 27, in main

dispatcher = Update.dispatcher

AttributeError: type object 'Update' has no attribute 'dispatcher'
 
Ответить с цитированием

  #2  
Старый 23.07.2024, 17:45
chromiusj
Флудер
Регистрация: 10.08.2021
Сообщений: 6,010
С нами: 2505538

Репутация: 133


По умолчанию

А в чем проблема использовать айограм? В репо есть пример бота

aiogram/examples/echo_bot.py at dev-3.x · aiogram/aiogram

aiogram is a modern and fully asynchronous framework for Telegram Bot API written in Python using asyncio - aiogram/aiogram

github.com


Dispatcher - aiogram 3.10.0 documentation
 
Ответить с цитированием

  #3  
Старый 11.08.2024, 18:37
Макаров
Новичок
Регистрация: 27.06.2024
Сообщений: 22
С нами: 991773

Репутация: 3
По умолчанию

Ошибка указывает на отсутствие атрибута dispatcher у объекта Update.

Исходя из документации, функция main() должна выглядеть вот так:

main():





Код:
def
main
(
)
# Вставьте сюда ваш токен
application
=
Application
.
builder
(
)
.
token
(
"лол"
)
.
build
(
)
# Добавляем обработчик сообщений
application
.
add_handler
(
MessageHandler
(
Filters
.
text
&
~
Filters
.
command
,
delete_emojis
)
)
# Запускаем бота
application
.
run_polling
(
allowed_updates
=
Update
.
ALL_TYPES
)


руководствовался: https://docs.python-telegram-bot.org/en/v21.4/examples.echobot.html

Рекомендация: Читать документацию и выбирать современные библиотеки
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.