Slack + Kafka: 아주대학교 공지 봇
1시간마다 모든 공지를 불러 {"TITLE": "제목", "DATE": "올린 날", "LINK": "http 주소", "WRITER": "글쓴이"}를 json 형태로 저장한다. 이 json 파일이나 새로운 공지가 있으면 기존 json과 비교해서 새로운 데이터를 Consumer로 보내고, Consumer는 새로운 데이터를 받으면, Slack API를 이용해, "#아주대" 채널에 공지를 올려준다. 마지막 파싱 시간도 기록해 종료 후 다시 불러도 1시간이 지나지 않으면 파싱하지 않는다. 결과) Last parsing: 1972-12-01 07:00:00 Trying to parse new posts... Sending a new post...: 12179 ... Last parsing: 2020-12-04 19:11:42.839219 Trying to parse new posts... No new posts yet... Resting 1 hour... ... Last parsing: 2020-12-06 11:55:35.386262 Wait for 3494 seconds to sync new posts.
Showing
- img/slack_ajou.png 0 additions, 0 deletionsimg/slack_ajou.png
- python/README.md 30 additions, 0 deletionspython/README.md
- python/src/AjouSlackConsumer.py 89 additions, 0 deletionspython/src/AjouSlackConsumer.py
- python/src/AjouSlackProducer.py 157 additions, 0 deletionspython/src/AjouSlackProducer.py
- python/src/SlackKafkaConsumer.py 5 additions, 2 deletionspython/src/SlackKafkaConsumer.py
- python/src/SlackKafkaProducer.py 3 additions, 1 deletionpython/src/SlackKafkaProducer.py
- python/src/config.py 1 addition, 0 deletionspython/src/config.py
img/slack_ajou.png
0 → 100644
27.1 KiB
python/src/AjouSlackConsumer.py
0 → 100644
python/src/AjouSlackProducer.py
0 → 100644