Zappier에서 Github Issue 생성을 트리거하고 python 스크립트에서 Google 번역 API를 두드리고 번역 된 새로운 Github Issue를 만드는 예제. 일본어에서 영어로 버전.

Zappier에서 Github Issue 생성을 트리거하고 python 스크립트에서 Google 번역 API를 두드리고 번역 된 새로운 Github Issue를 만드는 예제. 일본어에서 영어로 버전.

보충



Google 토큰 만료 날짜는 확인되지 않았습니다. 일단 움직였다.

Google 번역 API 용 GCP 인증 토큰을 얻습니다.



Google Cloud 인증 토큰을 gcloud 명령으로 가져옵니다. 환경 변수로 서비스 계정 파일을 지정하는 예. · Issue #545 · YumaInaura/YumaInaura

Issue 생성을 트리거로 설정





Code By Zapier



Github의 title 및 description을 입력 리소스로 지정



스크립트



이전에 얻은 토큰을 스크립트에 포함
Google 번역으로 Markdown이 무너지므로 파이썬으로 적당하게 성형.
import requests
import re

data = {
  'q': [
        input["title"],
        input["body"],
    ],
  'source': 'ja',
  'target': 'en',
  'format': 'text'
}

url = 'https://translation.googleapis.com/language/translate/v2'
token = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

headers = {
 'Authorization': 'Bearer {}'.format(token),
 'Content-Type': 'application/json',
}

res = requests.post(url, headers=headers, json=data)

# Title
output_title = res.json()['data']['translations'][0]['translatedText']
# For twitter in English 240 upper limit characters
output_title = output_title[:200] 

# Fix Body: Image Markdown tag spaces
output_body = res.json()['data']['translations'][1]['translatedText']
output_body = re.sub(r'! \[image\] ', "![image]", output_body)


output = [
  {
    "title": output_title,
    "body": output_body
  }
]

Find or Create Issue 작업하기


  • 여러가지 기입
  • 「Github ISsue를 찾아, 없으면 작성하는 것도 가능」이라고 하는 수수께끼의 사양이므로, 검색 대상으로서, 절대로 입력하지 않는 Search value 를 지정해 둔다.





  • 결과





    이미지도 확실히



    덤. 필요한 경우 Zapier 의 Detect Language / Only Continue if 로, 일본어 판정된 경우에만, 액션이 달리도록 해 둔다.





    Original by Github issue

    좋은 웹페이지 즐겨찾기