Fala pessoal, sou novato neste mundo, estou tentando criar um bot do telegram que edite mensagens, um amigo me deu umas dicas, ele também é novato, eu escrevi um pouco mas nao esta funcionando, o codigo é este:
from telegram import Update
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext
# Função para editar mensagens
def edit_message(update: Update, context: CallbackContext) -> None:
message = update.message
new_text = message.text.replace("USDT", "/USDT")
message.edit_text(text=new_text)
def main() -> None:
# Substitua 'token' pelo token do seu bot
updater = Updater(token="token", use_context=True)
dispatcher = updater.dispatcher
# Manipulador para editar mensagens
dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, edit_message))
# Inicie o bot
updater.start_polling()
# Mantenha o bot em execução até que Ctrl+C seja pressionado
updater.idle()
if __name__ == '__main__':
main()
os erro que aparece é este:
>>> from telegram import Update
>>> from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'Filters' from 'telegram.ext' (C:\Program Files\Python311\Lib\site-packages\telegram\ext\__init__.py)
>>>
>>> # Função para editar mensagens
>>> def edit_message(update: Update, context: CallbackContext) -> None:
... message = update.message
... new_text = message.text.replace("USDT", "/USDT")
... message.edit_text(text=new_text)
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'CallbackContext' is not defined
>>> def main() -> None:
... # Substitua 'YOUR_TOKEN' pelo token do seu bot
... updater = Updater(token="6482257352:AAGUl1WFZjqRDet_YutghOJewrHgVhvfCpc", use_context=True)
... dispatcher = updater.dispatcher
...
>>> # Manipulador para editar mensagens
>>> dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, edit_message))
File "<stdin>", line 1
dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, edit_message))
IndentationError: unexpected indent
>>>
>>> # Inicie o bot
>>> updater.start_polling()
File "<stdin>", line 1
updater.start_polling()
IndentationError: unexpected indent
>>>
>>> # Mantenha o bot em execução até que Ctrl+C seja pressionado
>>> updater.idle()
File "<stdin>", line 1
updater.idle()
IndentationError: unexpected indent
>>>
>>> if __name__ == '__main__':
... main()
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "<stdin>", line 3, in main
TypeError: Updater.__init__() got an unexpected keyword argument 'token'
>>>
Se alguém puder me ajudar, eu tiver interesse em me ajudar a fazer este bot, ele é parte de um sistema maior, sou trader, tenho uma estratégia funcionando, estou tentando automatizar ela com telegram mas preciso editar as mensagens.