변수명이나 함수명에 곤란했을 때에 도움이 되는 Slackbot를 만들었다
만든 것
codic "翻訳したい言葉"
를 Slack에서 발언하면 번역 해주는 bot파이썬 Slackbot 라이브러리와 codicAPI를 사용하여 만들었습니다.
Slackbot 라이브러리
Slackbot 라이브러리의 사용법은 아래를 참고로 했다.
Python의 slackbot 라이브러리로 Slack 봇 만들기
Python으로 Slackbot 만들기 (1)
codic
codic은 프로그래머 시스템 엔지니어를위한 명명 도구
유저 등록을 하면 프리 플랜에서도 100/h 리퀘스트를 하한으로 한다 API가 게시됨 그래서, 이쪽을 이용한다.
또 에디터나 IDE의 플러그인도 준비되어 있다.
(일부로 bot로 번역하지 않아도 플러그인을 이용하면 좋다)
구현
codic 액세스 토큰 얻기
사용자 등록 후 프로필에서 액세스 토큰을 얻을 수 있습니다.
이 페이지에서 API의 상태도 확인 가능.
코드
codic_translate.py
# -*- coding: utf-8 -*-
from slackbot.bot import listen_to
import requests
@listen_to(r'^codic\s+\S.*')
def codic_translate(message):
text = message.body['text']
temp, word = text.split(None, 1)
codicURL = 'https://api.codic.jp/v1/engine/translate.json?text={}&casing=lower+underscore'.format(word)
headers = {
'Authorization': 'codicのアクセストークン',
}
r = requests.get(codicURL,headers=headers)
codic_response = r.json()
message.send('"' + word + '"をcodicで翻訳すると')
message.send(codic_response[0]['translated_text'])
"번역하고 싶은 말"을 Slack의 발언으로부터 받는다
listen_to(r'^codic\s+\S.*')
def codic_translate(message):
text = message.body['text']
temp, word = text.split(None, 1)
codic "번역하고 싶은 말"이라는 형식의 발언이 있었을 경우,
"번역하고 싶은 말"을
word
에 대입한다codicAPI에서 번역 받기
codicURL = 'https://api.codic.jp/v1/engine/translate.json?text={}&casing=lower+underscore'.format(word)
headers = {
'Authorization': 'codicのアクセストークン',
}
r = requests.get(codicURL,headers=headers)
codicAPI의 text로
word
를 던지면 번역을받을 수 있습니다.casing에서
camel
, pascal
, lower underscore
, upper underscore
, hyphen
codic_response = r.json()
message.send('"' + word + '"をcodicで翻訳すると')
message.send(codic_response[0]['translated_text'])
Slack에서 번역을 발언합니다.
Reference
이 문제에 관하여(변수명이나 함수명에 곤란했을 때에 도움이 되는 Slackbot를 만들었다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shimewtr/items/445aaf199f587cfa6aa5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)