• 개요
  • 포스트
  • 시리즈
  • 스레드
  • 소개
한라대학교 공지 알림 봇 제작기 (10) - 진짜 제대로된 클래스화

한라대학교 공지 알림 봇 제작기 (10) - 진짜 제대로된 클래스화

Intro 내가 클래스화를 너무 단순하게 생각했다. 디테일한 구조화 없이 그냥 클래스를 만들고 거기에 기존 코드를 다 때려박았다. 가독성은 개판이 되고, 쓸모없는 부분이 너무 많아졌다. 그래서 그냥 이번에는 A4에 전체적인 흐름을 그림으로 그려서 다시 클래스화를 진행하고자 한다. 최대한 비슷한 기능끼리 모듈을 만들었다. 코드는 초반에 Doc을 추가해서 모듈에 대한 간략한 설명을 추가할 …

2020년 3월 11일 · 4 min read

단국대학교 공지 알림 봇 제작기 (2) - 데이터 분석

단국대학교 공지 알림 봇 제작기 (2) - 데이터 분석

Intro 조건. 크롤링 조건 단국대 공지사항 천안 공통 분석 분석 할 html 코드 2개 <li> <div class="top_area"> <div class="write_num"> NO. 3584 </div> <div class="num_area"> <span class="table_date"> <strong>최종수정</strong> 2020.03.04 </span> <span class="table_hit"><strong>조회수</strong> 242 </span> </div> </div> <div class="subject"> <a href="http://www.dankook.ac.kr/web/kor/-390?p_p_id=Bbs_WAR_bbsportlet&p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-2&p_p_col_pos=1&p_p_col_count=2&_Bbs_WAR_bbsportlet_curPage=1&_Bbs_WAR_bbsportlet_action=view_message&_Bbs_WAR_bbsportlet_messageId=714800"> <div class="subject_txt"> [퇴계기념중앙도서관] 도서관 임시 휴관 기간 연장 안내(~3.22)</div> <div class="ico_area"> …

2020년 3월 5일 · 24 min read

단국대학교 공지 알림 봇 제작기 (1) - 개발 환경 및 개요

단국대학교 공지 알림 봇 제작기 (1) - 개발 환경 및 개요

Intro 군 복무중 다양한 고민과 여러가지 문제로 힘들어하던 나에게 민*가 많은 도움을 주었다. 같이 복무하면서 도움만 받은 것 같아서, 내가 할 수 있는 선에서 도움을 주고 싶어서 연락하고 이 프로젝트를 진행했다. 민*는 단국대 천안에 다닌다. 내가 할 일은 이전에 만들어 두었던 한라대학교 공지 알림 봇을 단국대에 맞춰 수정하기만 하면 된다. …

2020년 3월 5일 · 0 min read

한라대학교 공지 알림 봇 제작기 (8) - 유지보수 2탄

한라대학교 공지 알림 봇 제작기 (8) - 유지보수 2탄

Intro 다시는 이 시리즈에 글 쓸 일이 없길 바랐지만. 짜잔. 그럴리가 없죠. 시작하겠습니다. 유지보수 2탄 사건 설명 사건 개요 알람이 폭팔적으로 와서, '또 제목을 바꾼건가?', '난 잘 고쳤는데?'라는 생각을 했다. 그런데 그게 아니였다. 게시글을 지운것이다. 게시글은 3가지 방식으로 작동된다. 작성,수정,삭제 작성과 수정에 대한 대책은 바로 앞 게시글에서 해결했다. 하지만 삭제를 …

2020년 3월 2일 · 12 min read

한라대학교 공지 알림 봇 제작기 (7)  - 유지보수

한라대학교 공지 알림 봇 제작기 (7) - 유지보수

Intro 내가 다시 이 시리즈를 작성할 일은 없을 줄 알았는데... 사건 설명 사건 개요 학교에서 일반공지 게시글의 제목을 바꿨다. 수정 과정 ... new_file.write(posts[0].text) ... elif before != post.text: ... 지금까지 사용한 코드는 post.text (게시글의 제목)으로 최신 게시글인지 판단했다. 게시한 공지의 제목을 바꾼다는 생각을 하지 못해서이다. 충분히 가능했으나, 에측하지 못해서 에러가 …

2020년 3월 2일 · 9 min read

한라대학교 공지 알림 봇 제작기 (6) - 마치며

한라대학교 공지 알림 봇 제작기 (6) - 마치며

Intro 블로그 첫 프로젝트가 끝났습니다. 다음에 다른 프로젝트로 찾아뵙겠습니다. 한라대학교 공지 알림 봇 제작기를 읽어주신 모든분들께 감사드립니다. 최종 코드 일반 공지_ver # -*- coding: utf-8 -*- ########## 서비스 코드 import requests from bs4 import BeautifulSoup import os import telegram import sys import time BASE_DIR = os.path.dirname(os.path.abspath(__file__)) my_token = '봇 토큰' …

2020년 2월 24일 · 11 min read

한라대학교 공지 알림 봇 제작기 (5) - 서버 작업

한라대학교 공지 알림 봇 제작기 (5) - 서버 작업

Intro 서버는 AWS의 Amazon Lunux 2를 사용했다. PuTTY 나는 서버에 접속할때 PuTTY를 주로 사용한다. PuTTY는 SSH, Telet 등의 접속방식을 제공한다. PuTTY는 서버에 원격으로 접속하게 도와주는 프로그램이다. 다운로드 위 링크를 통해 다운받을 수 있다. PuTTY 접속 방법 빨간 부분만 잘 설정해주면 잘 접속이 된다. AWS .pem을 .ppk로 변환하는 방법 위에서 puttygen.exe를 …

2020년 2월 24일 · 7 min read

한라대학교 공지 알림 봇 제작기 (4) - 코드분석 (telegram bot)

한라대학교 공지 알림 봇 제작기 (4) - 코드분석 (telegram bot)

Intro 이번 챕터에서는 telegram bot을 활용해서 공지가 생기면 알람이 오도록 구현해보겠다. 지금까지 만든 코드를 실행하면 위 같은 결과가 나온다. 공지를 제외한 1page에 있는 게시글을 전부 크롤링한 모습이다. telegram bot 텔레그램 봇 정리본 위 정리본에 링크 되어 있는 문서를 참고하자. 봇 만들기 BotFather 텔레그램 봇은 BotFather을 통해 만들 수 있다. 만드는 …

2020년 2월 24일 · 15 min read

한라대학교 공지 알림 봇 제작기 (3) - 코드분석 (Requests, bs4)

한라대학교 공지 알림 봇 제작기 (3) - 코드분석 (Requests, bs4)

Intro 이 글에서는 Requests와 BeautifulSoup를 내 코드에 어떻게 적용시켰는지 알려준다. 웹페이지를 크롤링하기 위핵서는 크롤링할 웹의 주소 웹에서 F12(개발자 도구)를 누르면 나오는 소스 분석 이 두가지가 필요하다. Requests 우선 웹의 주소를 가지고 크롤링할 웹의 데이터를 가져와보자. # -*- coding: utf-8 -*- import requests req = requests.get('http://www.halla.ac.kr/mbs/kr/jsp/board/list.jsp?boardId=23401&mcategoryId=&id=kr_060101000000') html = req.text print(html) # …

2020년 2월 19일 · 18 min read

한라대학교 공지 알림 봇 제작기 (2) - 코딩

한라대학교 공지 알림 봇 제작기 (2) - 코딩

A. 개괄적 도식화 개괄적으로 도식화를 하면 저런 모습이다. 나(client)는 학교 공지사항이 최신화 되면 알람받기를 원한다 위 목적을 해결하기 위해서는 학교 공지사항이 최신화 되면 알람오기를 원한다 (나에게) 위 두가지 사항을 만족시켜야 한다. 그러므로 나는 학교 공지사항이 최신화 되는지 지속적으로 확인하는 부분과 알람을 보내주는 부분을 만들것이다. 때문에 알람을 보내주는 부분은 텔레그램과 카카오톡을 …

2020년 2월 12일 · 11 min read