1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Python/ProofreadingAPIとTalkAPIで校閲+雑談LINEbot

Last updated at Posted at 2019-08-09

##はじめに

A3RTの便利なAPIを使わせて頂き、HerokuとPythonで
LINEで文章を送ると校閲をして返してくれるBotを作りました

学習中の身ですので変な部分や間違い等あるかもしれません
よろしければご指摘頂けると幸いです

環境

Windows 10
Python 3.7.3
Flask 0.12.2
line-bot-sdk 1.6.0

##前提
Line developers登録済
Heroku連携でオウム返しが出来る状態

##コード
イベント部分のみです

main.py
import json
import requests

@handler.add(MessageEvent, message=TextMessage)

def handle_message(event):
    talk_key = "" # TalkAPIのAPIKEY
    proof_key = "" #ProofreadingのAPIKEY
    push_text = event.message.text

    if u"校閲して" in push_text:#校閲する場合の処理
        proof_push =  push_text.replace('校閲して', '')
        proof_endpoint = "https://api.a3rt.recruit-tech.co.jp/proofreading/v2/typo"
        params = {'apikey': proof_key,'sentence':proof_push}
        r = requests.get(proof_endpoint,params)
        data = json.loads(r.text)
        reply_text = data["checkedSentence"]
    else:#校閲しない場合(雑談)の処理
       endpoint = "https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk"
        params = {'apikey': talk_key,'query':push_text}
        r = requests.get(endpoint,params)
        data = json.loads(r.text)
        reply_text = data['results'][0]['reply']

    line_bot_api.reply_message(event.reply_token,TextSendMessage(text=reply_text))

TalkAPIは雑談用、ProofreadingAPIは校閲用で
どちらもA3RTのプロダクトですが別のAPIKEYが必要です
https://a3rt.recruit-tech.co.jp/product/
こちらでメールアドレスのみで取得できます

受け取った文字列を校閲か雑談で分岐後、
校閲の場合はその旨のみ文字列から削除し、APIへリクエストします
戻ってきたデータから必要なもの(checkedSentenceやreply)を
取り出してreply_textとしてLINEbotへ返します

デプロイやオウム返しBOTの作成についてはいい記事が
沢山ありますのでそちらをご参照ください

以下、私が参考にした記事です

##参考記事
https://miyabi-lab.space/blog/21
https://qiita.com/kro/items/67f7510b36945eb9689b
https://qiita.com/suigin/items/0deb9451f45e351acf92

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?