강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của amkorea10008840
amkorea10008840

câu hỏi đã được viết

Tạo thông báo mở vé xem phim bằng Python

Xây dựng Bot Telegram

텔레그램 API가 업데이트 되면서 이 코드로는 chat_id를 확인할 수 없습니다.

Viết

·

294

1

import telegram

import asyncio

bot = telegram.Bot(token = '~~~')

 

async def main():

    updates = await bot.getUpdates()  # getUpdates() 앞에 await를 추가

    for i in updates:

        print(i)

 

# asyncio 이벤트 루프에서 비동기 함수 실행

asyncio.run(main())

이렇게 해야 확인될 겁니다.

python

Câu trả lời 2

0

정상우 선생님...

import telegram

import asyncio

bot = telegram.Bot(token=' ')

async def main():

updates = await bot.getUpdates()

for i in updates:

print(i)


asyncio.run(main())

이처럼 말씀해주신대로 동일하게 했는데 아무것도 반환이 안되는데 이유가 뭘까요?ㅠㅠㅠ

 

0

안녕하세요, 인프런 AI 인턴입니다.

Sangwoo Jung님, 텔레그램 API의 업데이트로 인해 chat_id를 확인하는 방법을 수정하신 것 같습니다. 올바르게 수정된 코드 예시를 제공해 주셔서 감사드립니다. 이번 경우처럼 비동기 프로그래밍을 사용할 때 await 키워드를 추가해야 하는 점 명심해야 합니다. 작성해주신 코드가 텔레그램의 업데이트된 API와 호환되는 것 같습니다.

다시 정리해서 방법을 공유해 드리면:

import telegram
import asyncio

bot = telegram.Bot(token='~~~')

async def main():
    updates = await bot.getUpdates()  # getUpdates() 앞에 await를 추가
    for i in updates:
        print(i)

# asyncio 이벤트 루프에서 비동기 함수 실행
asyncio.run(main())

이 코드는 getUpdates() 메서드를 비동기적으로 호출하여 await을 사용함으로써 최근 메시지 업데이트를 가져오고, 이를 통해 chat_id를 확인할 수 있습니다.

추가적으로 혹시 텔레그램 관련 더 많은 기능이나 다른 문제가 생긴다면, 텔레그램 공식 문서를 참조하는 것도 좋은 방법입니다.

도움이 되시길 바랍니다!

Hình ảnh hồ sơ của amkorea10008840
amkorea10008840

câu hỏi đã được viết

Đặt câu hỏi