1
1

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によるLINE WORKS版Trello Botの実装(PyPI lineworks インストールVer.)

Posted at

自作してPyPIにアップロードしたパッケージ「lineworks」を使用し、LINE WORK版Trello Botを実装した際の備忘録。
デプロイ先は前回(PythonでLINE WORKS版 Trello Botを作るまでのお話)同様、Herokuとした。
パッケージインストール&GitHubからデプロイにしたことで、だいぶ楽になった。

環境

Windows 10
PyCharm Community Edition 2019.2
Python 3.7.3(Anaconda3 2019.07)
GitHub
Heroku

前提条件

  • LINE WORKS API情報取得済
  • Trello API情報取得済

実装までの流れ

  1. 仮想環境構築
  2. ライブラリのインストール
  3. コーディング(Flaskデプロイ用ファイル作成含む)
  4. GitHub経由でHerokuにデプロイ
  5. Trello Webhookの作成
  6. テスト

仮想環境構築

PyCharmでプロジェクト作成後、python -m venv venvコマンドで仮想環境構築。PyCharmでプロジェクト作成する際に仮想環境構築できるようなのでそれを使おうとしたら、なぜかpipインストールできない現象にはまった(SSLエラー)。次から絶対、使わない。

ライブラリのインストール

インストールしたものは下記の通り。

  • flask
  • gunicorn
  • lineworks
  • py-trello

なお、requestsとpycryptodomeはlineworksをインストールすれば自動で入る(pycryptoはNoModuleErrorになることが分かって大変だった・・・)。

コーディング

GitHub参照。前回はPython 3.6.8を使っていたが、今回はPython 3.7.3を使っているので、runtime.txtに変更あり。また、今回からlineworksパッケージを使っているので、requirements.txtも変更あり。

GitHub経由でHerokuにデプロイ

GitHubにリモートリポジトリを作った後、下記コマンドでローカルリポジトリ作成&プッシュ。

$ git init
$ git add .
$ git commit -m "commit message."
$ git remote add origin {リモートリポジトリ名}.git
$ git push -u origin master

その後、Herokuにもアプリを作り、前回同様、ビルドパックの設定と環境変数の設定を行う。そして、GitHubからデプロイ。

参考:【備忘録】GitHub経由でHerokuにデプロイするまでの流れ

Trello Webhookの作成

HerokuにデプロイしてからでないとWebhook作成できない(HEADリクエストしないと作成に成功しない)ので、このタイミングで行う。

参考:【備忘録】Trello Webhook関連

テスト

Trelloのカードからコメントして、LINE WORKS Botにテキストメッセージが来れば成功。なお、Trelloのカードにコメント欄ができる条件があり、ボードに2名以上の参加者がいないとダメみたい。

1
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?