この記事でわかること
- kernelからLINEへメッセージ送信後、ConnectionErrorエラーで失敗したときの対象方法がわかる
- kernelとLINE Notifyの連携方法がわかる
- LINE Notifyと連携させると、何が便利かわかる
いきなり結論!ConnectionErrorエラーが出たときの対処方法
Kaggleのnotebooks(kernel)にLINE Notifyを導入して、プログラムの実行状況をLINEを通して通知させようとしました。以下のサイトを参考にコードを実装したが、ConnectionErrorエラーで失敗。
Kaggle APIとLINE APIを用いたKernelの新規投稿を通知する仕組みの構築
(通知の仕組みをわかりやすく解説してくれています!)
エラーの内容は以下の通り。
ConnectionError: HTTPSConnectionPool(host=’notify-api.LINE.me’, port=443): Max retries exceeded with url: /api/notify (Caused by NewConnectionError(‘
対処方法は、kernel画面の右下にある「Settings」でInternetの設定を「ON」にすること。
ONにしたらkernelの再読み込みが発生するので、LINEに送信を試してみる。
すると、無事にLINEからメッセージを受信できるようになり、プログラムの実行状況を確認できるようになりました!
Kaggleのnotebooks(kernel)にLINE Notifyを導入する
ここからは、kernelにLINE Notifyを導入する方法を記載します。
LINE Notifyにアクセスしてトークンを取得する
前提条件として、LINEのアカウントを持っていることが条件です。
以下のサイトにアクセスし、LINE Notifyからアクセストークンを取得します。
LINE Notify
https://notify-bot.line.me/my/
「Generate token」ボタンを押して、tokenを取得します。
kernelのInternetの設定を「ON」にする
kernelのInternetの設定を「ON」にします。
コードを実装する
以下のようなコードを実装します。
実装の際に、LINE Notifyで取得したアクセストークンを使用します。
def send_line_notification(message):
#メモリ使用量を取得する
mem = psutil.virtual_memory()
u = mem.used/(1024*1024)
message = ("○○コンペ(使用メモリ%dM)" % u) + message
line_token = 'あなたのアクセストークンを記載する' # 終わったら無効化しよう
endpoint = 'https://notify-api.line.me/api/notify'
message = "\n{}".format(message)
payload = {'message': message}
headers = {'Authorization': 'Bearer {}'.format(line_token)}
requests.post(endpoint, data=payload, headers=headers)
メッセージに必ず含めるもの
私は、メッセージ通知の際は、以下の情報を常時入れています。
・何のコンペなのか
・現在の使用メモリ(RAM)
カーネルは、メモリ不足で落ちることがよくあるので、使用メモリがあるとどこで落ちたのか目安にできるため便利です。
LINE通知があると便利なこと
LINE通知があると以下のケースで便利です
便利なこと
・プログラムが終わったかどうか、kaggleにアクセスして確認する手間がなくなる
・万が一、メモリ不足で停止してしまっても、心の準備ができる(通知が、来ないときは大概メモリ不足で落ちていることがほとんど
・実行にかかる時間が、LINEのログからわかる
以上、解決策でした。
\IT未経験者からのサポートあり!転職サービス3選!!/
サービス名 | |||
---|---|---|---|
未経験 | 未経験OK | 未経験の転職専用 | 経験者向け |
公開の求人数 | ITエンジニア全体で1万件以上 ITエンジニア未経験で600件以上 |
未公開 | 5,000件以上 |
利用対象 | 全職種 | IT特化 | IT特化 |
特徴 | ✓誰もが知る転職サービス ✓経歴を登録しておくとオファーが来る |
✓企業担当者と条件交渉 ✓スキルの身につく企業を紹介 |
✓IT専門のエージェントが対応 ✓転職成功すると年収200万円以上の大幅アップがある |
転職サポート内容 |
|
|
|
公式サイト | リクナビネクスト | テックゲート | レバテックキャリア |