Python3에서 Slack에 채팅 보내기 ~ 보안 위험을 무시하고 ~

일기 부분



의리의 언니가 모모타로 전철의 신작을 하고 싶어서 구입을 검토하고 있는 아무래도 나입니다.

아마존에서 DL판을 사려고 했는데 일단 발견되지 않았다.
아무래도 닌텐도 e숍에서 밖에 DL판은 팔지 않는 것 같아.
가격이 무너지지 않기 때문에 고민하고 있습니다.

최근 일이 바빠서 과거의 자신이 어떤 코드를 쓰고 있었는지 망각의 그분입니다.

블루투스로 Switch의 자동 조작을 하는 기사를 쓰는 거라고 하는 생각만이 있어도 손은 전혀 움직이지 않았기 때문에 주말은 노력합니다.

환상에서는
  • 자동 조작하여
  • 부화 된 포켓몬이 색 차이인지를 이미지 처리로 판정하거나
  • OCR을 사용하여 개인 가치 검사 및 특성 검사를 결정합니다
  • 해당하는 경우 Slack으로 통지하고 처리를 종료한다

  • 같은 것을 생각합니다.

    그 중

    "해당되면 Slack으로 알림"

    이 처리, 내가 직장이나 비공개로 사용하는 결정 로직이 있습니다.
    심플한 내용입니다만, 공개해 남겨 두려고 생각합니다.

    주제 부분



    표제에서 볼 수 있듯이 '보안 위험을 무시합니다'.
    개인의 개발 단말에 넣고 있을 뿐이므로 좋다고 합니다. 좋아요.

    Slack의 API를 사용한 전송 메커니즘은 이전에 게시했습니다 ↓
    htps : // m / smd877 / ms / 3254 또는 b77b9bc8853

    이것과 같은 구조를 사용합니다. 다른 부분은
    「Add an OAuth Scope」を押下し「files:write」を選択します。
    

    에서 코코는 "files:write"대신 "chat:write"를 선택합니다.

    채팅을 전송하기 위한 액세스 토큰과 대상 채널 ID를 준비하면,
    $ sudo vi /etc/environment
    
    // 末尾に以下追加
    POST_SLACK_TOKEN_ID=取得したアクセストークン
    POST_SLACK_CHANNEL_ID=送信先のチャンネルID
    

    이렇게 environment에 넣어 버립니다. (이것은 리스크 포인트.)
    나머지는 이 두 가지 환경 변수를 사용하여 메시지를 보내는 코드를 제공합니다.

    slack-post.py
    import os
    import urllib.request, urllib.parse
    
    MESSAGE = 'sample message.'
    POST_SLACK_TOKEN_ID = os.environ.get('POST_SLACK_TOKEN_ID')
    POST_SLACK_CHANNEL_ID = os.environ.get('POST_SLACK_CHANNEL_ID')
    
    URL = 'https://slack.com/api/chat.postMessage'
    headers = {
        'Authorization': 'Bearer ' + POST_SLACK_TOKEN_ID
    }
    message = {
        'text' : MESSAGE,
        'channel' : POST_SLACK_CHANNEL_ID
    }
    data = urllib.parse.urlencode(message).encode()
    req = urllib.request.Request(URL,data=data,headers=headers,method='POST')
    urllib.request.urlopen(req)
    

    에서 파이썬을 실행하여 대상 채널에 메시지가 게시되었는지 확인

    이런 식으로.

    이상입니다.
    그럼 또.

    좋은 웹페이지 즐겨찾기