• 카테고리

    질문 & 답변
  • 세부 분야

    금융 · 재테크

  • 해결 여부

    미해결

RuntimeWarning: coroutine 'Bot.send_message' was never awaited 발생시

23.01.30 08:59 작성 조회수 3.66k

0

telegram_api_example.py

코드에서 아래의 에러가 발생하는 경우

RuntimeWarning: coroutine 'Bot.send_message' was never awaited
  telegram_bot.sendMessage(chat_id=TELEGRAM_CHAT_ID,
RuntimeWarning: Enable tracemalloc to get the object allocation traceback

 

아래와 같이 asyncio 모듈을 추가한 뒤 아래와 같이 소스코드를 변경하면 정상동작 합니다.

import asyncio


async def main():
    # 텔레그램 봇 설정
    telegram_bot = telegram.Bot(TELEGRAM_BOT_TOKEN)

    # 프로그램 시작 메세지 발송

    telegram_message_list_1 = [
        str(datetime.datetime.now()), 'Program Started!'
    ]
    await telegram_bot.sendMessage(chat_id=TELEGRAM_CHAT_ID,
                                   text=' '.join(telegram_message_list_1))

    # 매수 시그널 메세지 발송
    telegram_message_list_2 = [
        str(datetime.datetime.now()), '------ buy signal occured! -----------'
    ]
    await telegram_bot.sendMessage(chat_id=TELEGRAM_CHAT_ID,
                                   text=' '.join(telegram_message_list_2))


asyncio.run(main())

답변 1

답변을 작성해보세요.

0

정지현님의 프로필

정지현

질문자

2023.01.30

파이썬 버전
- Python 3.10.8 64-bit

모듈 버전
- python-telegram-bot: v20.0
- asyncio: v3.4.3

안녕하세요~. 반갑습니다.

정보 공유 감사합니다 ^^.

좋은 하루되세요~.

감사합니다.