티스토리 뷰

파이썬으로 슬랙(Slack) API를 이용하여 알람을 보내보자!

 

1. 슬랙(Slack) 설정

1) Workspace & Channel 생성(내용 생략)

2) App 생성

https://api.slack.com/

에서 'Create a custom app' 을 눌러서 생성하면 된다.

3) Incomming Webhooks 설정

 

해당 메뉴에서 활성화 후 '워크스페이스에 새 웹후크 추가' 를 누른 뒤 본인이 생성한 채널을 선택한다.

 

4) OAuth 및 권한 설정

다시 좌측 메뉴에서 'OAuth 및 권한' 메뉴를 선택 후 밑으로 내리면 권한을 추가할 수 있다.

'chat:write' 권한을 추가한다.

 

추가하고 나면 페이지 상단에 '앱을 다시 설치해주세요.' 라는 문구가 노출되며 상단으로 올려서 재설치하면 된다.

 

5) 슬랙 채널에 App 추가하기

  • 슬랙 채널 내 상단 i 메뉴 선택
  • 세부정보 항목에서 더보기 선택
  • 앱추가
  • 생성한 앱 선택하여 추가

 

2. 알림 전송

이제 슬랙으로 알람을 보낼 준비는 끝났다.

실제로 전송해보자!

 

우선 파이썬으로 코드를 작성하기 전에 curl 을 이용하여 알람이 오는지 확인해보자.

curl -X POST https://slack.com/api/chat.postMessage
-H 'Authorization: Bearer xoxb-2063683334582-2104100566434-H2k4JDBv4yRtv4TQXFu0jChn' \
-H 'Content-type: application/json' \
--data '{"channel":"#test_channel","text":"hello slack!"}'

{"ok":true,"channel":"C022MAASKST","ts":"1622009602.000900","messa...(생략)

 

 

정상이다! 이제 간단한 파이썬 코드를 작성해보자.

 

파이썬에는 이미 'Slacker' 라는 라이브러리가 존재하지만, 21년도부터 슬랙 정책에 의해 사용할 수 없게 되었다고 한다.

그래서 나는 'requests' 라이브러리를 사용하여 간단하게 코드를 작성했다.

import requests
import json

def sendSlack():
    text = '파이썬으로 슬랙 알림보내기!'

    SLACK_BOT_TOKEN = 'xoxb-2063683334582-2104100566434-H2k4JDBv4yRtv4TQXFu0jChn'
    CHANNAL = '#test_channel'
    payload = {
        'channel': CHANNAL,
        'text': text
    }
    response = requests.post(
        'https://slack.com/api/chat.postMessage',
        headers = {
            'Content-Type': 'application/json', 
            'Authorization': 'Bearer ' + SLACK_BOT_TOKEN
        }, 
        data = json.dumps(payload)
    )

    print(response)

sendSlack()

 

성공했다.

 

이제 크롤링 봇이나, 다양항 상황에 따라 슬랙으로 알림을 받도록 연동해보면 좋겠다.

 

 

 

참고]

https://api.slack.com/apis

https://pypi.org/project/requests/

http://hleecaster.com/sending-messages-to-slack-channel-using-python/

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함