본문 바로가기

728x90
반응형

Python

(21)
[Python] 텔레그램 봇 생성 및 메시지 송신 파이썬을 사용하여 텔레그램 봇을 만들어 볼 것이다. 카카오톡은 오픈채팅에서 사용할 수 있는 봇을 추가할 수 있지만 텔레그램에서는 그런 기능을 직접 코드로 구현해야되는 것으로 보인다. 그래도 카톡 오픈채팅으로 메시지를 보낼 수 있는 코드를 따라해보려고 하였으나 채팅 입력 및 송신, 마지막 단계에서 실패했다. 그래서 텔레그램으로라도 메시지 송신이 가능한 봇을 만들어보고자 이 글을 쓰게 되었다. Index 1. 텔레그램 봇 만들기 이 글을 읽는 독자들은 기본적으로 텔레그램 계정을 가지고 있을 것으로 짐작된다. 검색창에 'botfather'를 입력하고, 해당 계정으로 들어가 채팅을 시작한다. '/newbot'을 치면 새로운 봇을 만들 수 있다. 봇의 이름과 식별명을 부여하고, 토큰 번호를 받았으면 이상없이 만들..
[Let's Get IT 파이썬 프로그래밍] 12. 프로그램 화면 구성 (tkinter) 마지막 단원이다. 거듭 언급하지만, 필자가 작성한 코드는 대부분 'Let's Get IT 파이썬 프로그래밍'의 저자, 안지혜 선생님의 코드에 기반하고, 인용한 것임을 밝힌다. 원 코드를 확인하고 싶다면, 교재에 적힌 Github를 찾아가보길 바란다. 사실 빅데이터를 활용한 머신러닝에 관심이 있어 코딩을 시작했는데 마지막 단원인 프로그램을 통한 시각화까지는 굳이 할 필요가 없었다고 생각한다. 그래도 배워두어서 나쁠 건 없고, 그동안에 배운 내용을 정리한다는 측면에서 의의가 있을 것이다. 1. 환경 설정 구글 클라우드를 서버로 하는 구글 코랩으로는 진행할 수 없다. tkinter 패키지는 (로컬) 서버가 구성된 컴퓨터로만 진행이 가능하기 때문이다. 새로 쓰는 라이브러리는 이 정도라고 본다. from tkin..
[Let's Get IT 파이썬 프로그래밍] 11. 클래스와 객체 거두절미하고 말한다. 가장 어려운 단원이다. 반복하여 보는 것을 권장한다. 'Let's Get IT 파이썬 프로그래밍' 594~638 페이지에 대한 내용이고, Self Check는 샘플 코드와 유사하여 풀지 않았다. 1. 기초 설명 'Let's Get IT 파이썬 프로그래밍'의 설명을 인용하고, 나름대로 예시를 들어 이해가 쉽게 되도록 하였는데 도움이 됐으면 좋겠다. 교재를 보는 것이 사진도 있어 훨씬 좋을 것이다. - 클래스 : 공통 특성과 기능을 모아 놓은 것 (ex - 달리기, 패스, 헤딩, 위치선정 등) - 객체 : 클래스를 바탕으로 구현된 실체 (ex - 수비수, 미드필더, 공격수) - 속성 : 클래스의 특성을 저장하는 변수 - 매서드(method) : 클래스가 가지는 기능 (함수) - 인스턴스..
[Let's Get IT 파이썬 프로그래밍] 10. 사용자 정의 함수 오늘 다루는 콘텐츠는 536~592 페이지의 내용이다. 교재의 구분법에 따르면, 파트3에 접어드는 셈인데 프로그래밍한 코드를 보다 간편하게 만드는 작업들을 이번 챕터부터 소개한다고 한다. 학교를 다니며 글을 길게 쓰는 것이 어려운가, 짧게 간추리는 것이 어려운가 생각해본 적이 있을 것이다. 여러 의견이 있겠지만 개인적으로는 짧게 쓰는 것이 난이도가 높다고 본다. 마구잡이로 덧붙여 길이를 늘릴 수 있지만, 빼는 건 특정 요소를 없애버릴 경우, 글이 이어지지 않을 수 있기 때문이다. 문맥을 유지하며 요약하는 것은 쉽지 않은 스킬이다. 각설하고, 본론으로 들어가보자! 1. 키워드 이번 단원에서는 몇몇 새로운 개념이 등장한다. 그중에서도 매개변수, 인자, 지역변수, 전역변수 등은 챙겨가도록 하자. 2. 프로젝트..
[Let's Get IT 파이썬 프로그래밍] 9. 위치 정보 시각화 사람들이 가장 흥미를 가질 법한 챕터가 이번 단원이 아닐까 싶다. '내 코드를 지도로 나타낼 수 있다고?' 라고 생각하는 작성자와 '지도로 보니까 재밌네.' 라고 느끼는 독자의 반응이 혼재할 듯하다. 이번 포스트는 488~530 페이지에 대한 내용이다. 그리고 이번 포스트에 사용된 데이터는 지난 포스트의 '파일 링크'를 누르면 다운로드 가능하니 참고 바란다. 1. 환경 설정 folium이라는 라이브러리를 사용하는데 아마 설치가 안된 사람들이 많을 것이다. 설명에 따라 다운로드를 진행하자. # folium 설치 !pip install folium # 라이브러리 불러오기 import folium as fol import csv import operator as op from openpyxl import lo..
[Let's Get IT 파이썬 프로그래밍] 8. 프로젝트 : 핫플레이스 인구 분석 그동안 배웠던 내용을 집대성해 하나의 프로젝트를 완성하는 단계로 접어들었다. 'Let's Get IT 파이썬 프로그래밍'의 438~485 페이지에 해당한다. 이 카테고리의 모든 코드는 교재에 실린 코드를 보고 그대로 따라하거나 필자의 상상력을 가미해 각색한 것이라는 것을 밝혀둔다. 1. 환경 설정 및 데이터 전처리 이번 과정은 꽤 귀찮은 작업이 많다. 외부 링크에서 파일을 설치하고, 데이터를 가다듬는 것이 대표적이다. 조금이나마 독자들의 수고를 덜어주고자 필요한 파일을 업로드하도록 하겠다. (파일 링크) 이 파일은 교재에 써있는 것처럼 서울 열린 데이터 광장에서 가져올 수 있다. 다만, 필자는 교재와 달리 작성일 기준 최신 데이터 (22.06 기준)를 사용하였음을 알린다. # load library im..
[Let's Get IT 파이썬 프로그래밍] 7. 프로젝트 로드맵 'Let's Get IT 파이썬 프로그래밍' 교재 424~435 페이지에 해당하는 내용이다. 쉬어가는 단원으로 생각해도 좋고, 전체적인 큰 그림을 짜보는 단계라고 생각해도 무방하다. 교재에 따르면, 프로젝트 로드맵은 목표 수립 단계 ▷ 프로그램 구현 단계 ▷ 프로그램 결과 분석, 3단계로 나뉜다고 한다. 1. 목표 수립 목표 설정은 당연하지만 상세할수록 좋고, 이후 데이터를 선정해 다음 단계로 넘어가면 되는데, 데이터를 먼저 고르고 목표를 설정해도 괜찮다. 개인적으로는 후자가 더 나은 듯한데 목표를 아무리 그럴 듯하게 수립해도 이를 지탱하는 데이터가 없거나 처리하기 어렵다면 목표를 달성할 수 없기 때문이다. 그렇다면 목표 수립의 과정을 불가피하게 다시 한 번 진행해야 하기 때문에 괜히 시간을 허비하는 꼴..
[Let's Get IT 파이썬 프로그래밍] 6. 데이터 분석 기초 이 포스트에서는 'Let's Get IT 파이썬 프로그래밍' 교재의 376~421페이지에 해당하는 내용을 다룬다. 1. 환경 설정 이번 단원의 자료는 괄호 안의 링크에서 다운로드하여 진행하면 된다. (자료 링크) 자료 위치를 몰라 꽤나 헤맸는데 도움이 됐으면 좋겠다. 사용한 라이브러리는 아래와 같다. import csv import io import requests import pandas as pd import matplotlib.pyplot as plt import operator 데이터를 설치한 경로에 따라 코드가 달라지기 때문에 동일한 코드로 원하는 결과를 얻을 수 있도록 외부 URL에서 데이터를 불러오는 코드를 작성해봤다. 1-1) 외부 링크에서 CSV 파일 가져오기 requests.get()으..

728x90
반응형