オウム返しBotを作ってみた
こんにちは、Palmです!
BOOKOFFを探索しているととある本に
出会ってしまいました。
それがこちらです!!
では早速作っていきましょう!
コマンドの実行
Python3のライブラリを簡単にインストールするための
ソフトフェア、「pip3」のインストールをします
コンソールをひらいて
こちらのコマンドを入力してください
$ sudo apt install python3-pip -y
入力後、パスワードを聞かれますが、
最初にPCを立ち上げる際に
聞かれるパスワードを入力してください。
「Restart services during package upgrades without asking?」
(確認せずにパッケージのアップグレード中にサービスを再起動しますか?)
と聞かれますので、
「Yes」
を選択し、エンターキーを押しましょう。
これでpip3のインストールは完了です。
pipはぴっぷと読みます。
テレグラムをインストールしよう
本記事では、メッセンジャーアプリTelegramを使用します。
ダウンロードは以下のURLからです。
BotのAPIキーを取得する
アカウントを作成したら、
左上の検索欄にて「@BotFather」と検索します。
次に、「@BotFather」に対してメッセージを送ります。
「/strat」とメッセージを送ってみましょう。
色々タグが出ていますが今回は、
「/newbot」のタグを送信してみましょう
「Alright, a new bot. How are we going to call it? Please choose a name for your bot.」
(さて、新しいボットです。それをどう呼ぼうか?ボットの名前を選択してください。)
とたずねてくるので
好きなBotの名前を決めましょう。
名前が正しい形式でないと
「Good. Now let’s choose a username for your bot. It must end in bot
. Like this, for example: TetrisBot or tetris_bot.」
(よし。次に、ボットのユーザー名を選択しましょう。「bot」で終わる必要があります。たとえば、TetrisBotやtetris_botのように。)
といわれてしまうので、
〇〇Botや〇〇_botのように
名前をつけてあげてください。
命名に成功すると
「Done! Congratulations on your new bot. You will find it at t.me/palm7710bot.」
(完成です!新しいボットおめでとうございます。t.me/palm7710bot で見つけることができます。)
というようなメッセージが送られてきます。
t.me/〇〇botを押してみたり、
先ほどのように検索してみると、
botのメッセージプログラムに移動できます。
送られてきたメッセージの下のほうに行くと、
「Use this token to access the HTTP API: ”YOUR-TOKEN-HERE” Keep your token secure and store it safely, it can be used by anyone to control your bot.」
(このトークンを使用して HTTP API にアクセスします: “YOUR-TOKEN-HERE” トークンを安全に保ち、安全に保管すると、誰でもボットを制御するために使用できます。)
このようにAPIキーを入手することができます
API keyとは、他社のサービスと連携するために必要な認証情報です。
絶対他人に知られないように!!
Pythonの辞書型とは?
このようなプログラムの構造を知るために必要な知識があります
それが辞書型です。
mydict = {"apple":1, "orange":2, "banana":3}
例えば、mydictという辞書型のオブジェクトの中に、
key(“apple”)とvalue(1)があるのが基本の形です。
辞書型とは、「{}」の中にkeyとvalueの組み合わせがあるデータのことです。
よくBotやchatなど受け答えのプログラムで使われます。
from import *の使い方
import(インポート)とは、別のファイルに記述されたPythonコードを取り込む機能のことです。
ファイルというのは、.pyで書かれたファイルのことです。
fromというのは、
あるファイルから一部だけをインポートすることです。
TelegramBotを作ってみよう
では早速、TelegramBotを作っていきましょう。
全体のコードはここにあります。
palm7710/telegram-bot (github.com)
作り方は簡単です。
GitHubからこのふたつのコードをダウンロードします。
1.APIキーの設定
「telegram_bot.py」の”YOUR_TOKEN_HERE”の部分を
独自のAPIキーに変更します。
“”(ダブルクォーテーション)を忘れずに!
# アクセストークン
TOKEN = "YOUR_TOKEN_HERE"
2.python-telegram-botのインストール
コンソールをひらいて
こちらのコマンドを入力してください。
$ pip install python-telegram-bot==13.13
少し古いタイプですが、バージョン 13 で問題なく機能します。
新しいバージョンだとこのBotは機能しません。
3.実行
1.cdコマンドでお使いのディレクトリを移動してください。
※cdコマンドが分からない方は【初心者向け】cdコマンドの使い方と基本的なオプション (itc.tokyo)こちらから!
Documents/python_folderにファイルを保存している場合は、「cd documents/python_folder」というようにします。
2.コンソールでこちらを実行します。
$ python echo_system.py
3.TelegramのBotに「/start」と入力してみる。
「こんにちは。対話を始めましょう」とかえってくるので、
「こんにちは」とへんしんすると、
「こんにちは」とオウム返ししてくれます。
まとめ
今回は、オウム返しBotを作ってみました。
この本を最後まで読むともっと自然に応答してくれるBotを作れます。
この本に出会えて、Pythonへの価値観が変わりましたし、
実際にAIっぽい機能にも触れることができます。
Python使いには筆者はこの本の購読を強くおすすめします。
最後まで読んでいただきありがとうございました!!