[1] Python + Anaconda를 사용해 텔레그램 API 설치하기
아나콘다 프롬프트를 실행하신 이후, 아래 명령어를 입력해 python-telegram-bot을 설치합니다.
$pip install python-telegram-bot --upgrade
설치를 완료하셨으면 2단계로 넘어가 바로 봇을 만들어보겠습니다.
[2] 텔레그램 Bot-Father를 사용해 봇 계정 생성하기
텔레그램 설치는 LINK[PC버전] 에서 가능하고, 모바일로 진행하셔도 상관 없습니다! 다만 API 키를 저장하는 파트가 있기때문에 PC버전을 추천합니다.
설치가 완료되셨다면, 다음 그림과 같이 BotFather를 검색하고 START 버튼을 클릭해주세요!
START 버튼을 누르면 다양한 메뉴들이 설명이 됩니다. 저희는 먼저 간단하게 봇을 만들어 볼 거기때문에 다음 명령어들을 통해 테스트를 진행할 예정입니다.
(1) /newbot 입력 -> Alright, a new bot. How are we going to call it? Please choose a name for your bot. 문구가 출력됨
(2) 봇의 이름 입력 -> Done! Congratulations on your new bot. You will find it at ~~~ 문구가 출력됨
이 두가지 과정을 거치면 완료입니다!
(1)번에 해당하는 과정입니다. /newbot 명령어를 입력한 이후에, 아래 사진과 같이 봇 이름과 username을 입력해주면 됩니다! username에는 꼭 bot라는 단어로 끝나야하는 규약이 있습니다!
(2)번에 해당하는 과정입니다. bot의 이름과 username을 설정하면, Done! Congraulations~~~라는 문구가 나오면 성공입니다!
메시지 하단부에 Use this token to access the HTTP API는 꼭 파일로 저장해두시길 바랍니다! 파이썬을 통해 챗봇을 동작시키기 위해서는 해당 토큰이 필요합니다.
[3] 생성한 Bot과 채팅하기
from telegram.ext import Updater, CommandHandler # import modules
TOKEN = '744354023:AAF-4H7nEQYQWybUNhAjm1BDCssOdQ9kjQU' #WEBLOCTEST_BOT TOKEN KEY
def check_id(bot, update):
try:
id = update.message.chat.id
print('Chat ID', id)
return id
except:
id = update.channel_post.chat.id
return id
def check_nickname(bot, update):
try:
nickname = update.message.from_user.first_name
print('Chat NickName', nickname)
return nickname
except:
nickname = update.channel_post.from_user.first_name
return nickname
def start_command(bot, update):
id = check_id(bot, update)
nickname = check_nickname(bot, update)
bot.send_message(chat_id=id, text="안녕하세요 " + nickname +"! 새로운 챗봇입니다!\n\n")
updater = Updater(TOKEN)
updater.dispatcher.add_handler(CommandHandler('start', start_command))
updater.start_polling(poll_interval=0.0,
timeout=10,
clean=False,
bootstrap_retries=0)
updater.idle()
해당 코드를 실행하고난 뒤 봇에 start 명령어를 보내면 다음과 같이 나오게 됩니다!!
다음 포스팅에서는 텔레그램 봇 API의 각 함수들에 대한 간략한 설명과 함께 버튼 메뉴 만들기에 대해 포스팅하겠습니다.
'개발 > Python' 카테고리의 다른 글
Openpyxl 사용방법 (0) | 2019.08.20 |
---|---|
파이썬으로 텔레그램 챗봇만들기 기초편[2] (0) | 2019.08.04 |