kkamagi's story

IT, 정보보안, 포렌식, 일상 공유

Programming

리스트 안에 딕셔너리에서 원하는 값 추출하기

까마기 2017. 9. 21. 16:17
728x90
반응형

텔레그램 봇을 만들고 chat id를 설정하는 과정에서 계속 오류가 발생하여 그 과정을 찾아가 보았다.

 

파이썬으로만 실행했을 때 오류 메세지 

:

"    chat_id = bot.getUpdates().message.chat.id

AttributeError: 'list' object has no attribute 'message' "

 

 

파이썬 인터프리터를 쉘 상에서 실행하여 왜 chat id를 불러올 수 없는 지 확인해 보았다.

 

telepot을 호출하고 bot을 설정한뒤, getUpdates 를 쳐보았다.

 

save image

 

위에서 부터 순차적으로 chat id를 알아가는 과정이다.

 

testbot인 @infosecurity_testbot에 모바일에서 메신저를 통화 대화를 입력하고 getUpdates를 치면 리스트 값이 추가되며, 리스트안에는 딕셔너리 형태로 'message'(key)에 매칭되는 값(value)이 들어있고 또 이 value 안에서 딕셔너리 key와 값이 지정되어 있는 형식이다.

 

이것을 어떻게 하면 불러올 수 있을까 파이썬 문법을 검색해보다가 이것저것 쳐보는 와중에 위와 같이 값을 얻어낼 수 있었다.

 

다시 확인 및 검증을 해보면, 인터프리터 상에서 해당 텔레그램 봇 API를 선언하고, 현재까지의 리스트 개수(메세지 값)은 다음과 같다.

save image

 

감사합니다.

반응형

'Programming' 카테고리의 다른 글

git pull 명령어 정리(작성중)  (0) 2020.01.09
web log 수집  (0) 2018.05.01
python bash 쉘 실행하기(스크립트)  (0) 2017.08.07
파이썬 스크립트 크론탭(crontab) 등록  (0) 2017.05.26
Octopress 설치하기  (0) 2017.03.02