非エンジニアがPythonでLINE Botをゼロから作成!全記録

こんにちは、タクロウ(@takuro_109)です!

LINEにデータアナリストとして転職し、データ部署ではなく事業部署で企画の人と一緒に仕事をし刺激を受け、サービス改善のため他社のサービスやLINE Botを使っていたら、自分でもサービス企画したくなりました。ただ、アイデアがあっても、仕事はデータアナリストであるし、できるかどうかも不透明なので、まずは趣味で自作してみることにしました。

LINEに入社したので、便利なLINE Botをつくりたいと思い、対象はLINE Botにしました。LINE Botの仕組みがわかることで、どのようなデータが取れるかわかるので、本職にも活きると考えました。

Webアプリ開発知識ゼロの非エンジニアが、2018年11月の終わりから12月の終わりの1ヶ月間かけてやっと、LINE BotやWebアプリの仕組みを理解し、雑談LINE Botをつくることができました。

非エンジニアで、LINE Bot作成にチャレンジしてみたい人の参考になればと、ゼロから学ぶのに参考にしたサービスや情報をまとめました!

作成環境

  • 利用言語:Python
  • PC:Mac
  • エディタ:Visual Studio Code
  • 公開環境:Heroku

作成したLINE Bot

りんな風雑談LINE Botを作成しました。試しに対話してみました。

以下から、友達追加して試してみることもできます。1返信目は、サーバーの立ち上がりで1秒ほどかかります。

友だち追加

Pythonのプログラムコードは下記記事を参照ください。

Pythonで雑談LINE Botをつくってみた!サンプルBot公開

振り返ると、LINEが提供しているMessaging APIとリクルートが提供しているTalk APIを組み合わせているだけなので、動かすことだけを目標にするなら1日あればできると思います。

ただ、Web APIの仕組みも知らなかったので、仕組みを理解するのに時間がかかりました。

学習につかったサービス

はじめは、ググって上位表示されたブログ記事を参考にしていましたが、公式サイトが一番わかりやすいことに気づきました。

公式サイトに沿って進めながら、つまずいたり、技術知識を深めたいと思ったりしたときに、動画学習サービス・参考書で学んでいきました。LINE Botを動かすだけなら公式サイトで十分だと思います。

参考 Messaging APILINE Developer

公式サイトを参考にPythonでLINE Botで動かしてみた記事です。

PythonでLINE Botを動かしてみた

Schoo

Schooホームページより

Schooはプログラミングに関する技術だけでなく、ビジネススキル全般まで学べる、動画授業の配信サイトです。生放送配信は無料で視聴できますが、過去の授業を見るには月額980円のプレミアムサービスに加入する必要があります。

過去にグロースハックを学ぶためにプレミアムサービスに加入していたので、このサービスを使用しました。受講した授業は下記の通り。

Webアプリ作成のためのPython

Webアプリ作成に便利なサービス

エンジニアの基礎スキル

非エンジニアが実践的なプログラミングを学ぶのに、動画学習はおすすめです!エンジニアの作業を動画で見られるため、参考書にはのっていない小技も学び作業効率を上げられるからです。

KindleUnlimited(参考書)

Amazonホームページより

書籍代を節約するために月額980円でKindleUnlimitedを利用しています。何か知識を増やしたいときは、ググるよりKindleUnlimitedで本を検索しています(自分の中で勝手にキンドると呼んでいます)。Pythonのプログラミングなどの実用書も充実しているのが魅力的です。

PythonでWebアプリを作成するためのフレームワークFlaskについて学習しました。

「Twitter連携の匿名質問サービス」をPythonで制作し公開することを目標とし、Pythonの基礎からWebアプリケーション制作までを3シリーズを通して学びました。

Webアプリ作成を目標に手を動かしながら学ぶことで、PythonでWebアプリケーションに必要な技術を理解することができたものの、TwitterAPI申請が英語で使用目的やアプリ内容を書かなければならず、Twitter連携の匿名質問サービスまでは至りませんでした。。。

さいごに

LINE Botを作成するという目標があったので、様々な技術を前向きに学び、エンジニアスキルを伸ばせたことが一番の収穫です。

動くものをつくるのは純粋に楽しかったです。Web APIを使えば便利なサービスを自作できると思いました。

Web APIなど駆使して便利なLINE Botをつくるのに、利用言語がPythonではなくPHPですが、以下の2冊が参考になります。

1冊目のほうが仕組みがわかりやすく、2冊目のほうが作成手順がわかりやすかったです。前提としているサーバーも違います。1冊目はレンタルサーバー、2冊目はHerokuです。

いいLINE Botをつくるのには、中身だけでなく見た目も大事で、LINEが提供しているLINE Bot Designerが高機能で使えます。簡単かつ短期間でLINE Botのプロトタイプを作成できます。

参考 LINE Bot DesignerLINE Developer

便利なLINE Botをつくることは達成できていないので、他のことよりLINE Botをつくりたくなったら、再度チャレンジしようと思います。よりよく生きるために必要だけど、なかなかやろうと思わない自分と向き合うセルフ・コーチングを、LINEという身近で、チャットという気軽さを備えたLINE Botで、個人的に実現したいと考えています。

LINE Bot作成にチャレンジしてみるのはいかがでしょうか。