質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

5353閲覧

Python  LINE Notify 接続エラー [WinError 10054]

Daichi-tsubasa

総合スコア19

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/05/03 10:00

前提・実現したいこと

1分おきにLINE にHello World と送信する

5回ほどは問題なくLINEに通知されますが、それ以降になると下記のエラーが出ます。

発生している問題・エラーメッセージ

#長すぎるので抜粋しました Traceback (most recent call last): File "C:ファイル名 ユーザー名\Python\Python37-32\lib\site-packages\urllib3\connectionpool.py", line 600, in urlopen chunked=chunked) ConnectionResetError: [WinError 10054] 既存の接続はリモート ホストに強制的に切断されました。 During handling of the above exception, another exception occurred: File "C:\ファイル名 ユーザー名\Programs\Python\Python37-32\lib\site-packages\requests\adapters.py", line 498, in send raise ConnectionError(err, request=request) requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(10054, '既存の接続はリモート ホストに強制的に切断されました。', None, 10054, None))

該当のソースコード

import requests import schedule import time def job(): def line(): url = "https://notify-api.line.me/api/notify" token = "トークン" headers = {"Authorization": "Bearer " + token} message = 'Hello World' payload = {"message": message} requests.post(url, headers=headers, params=payload) if __name__ == '__main__': line() # 1分ごとに実行 schedule.every(1).minutes.do(job) while True: schedule.run_pending() time.sleep(1)

試したこと

15分ごとやタイム間隔を変えてみましたが、実行後、数回目で上記エラーが出ます。

補足情報(FW/ツールのバージョンなど)

python 3.7.3
chromeのバージョン 73.0.3683.103
windows 10

参照
https://notify-bot.line.me/doc/ja/

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

Macだと上のコードを実行しても再現しないのでこれで修正できるのかは不明ですが、
セッションを使い回すように変更したらうまく動かないですか?

python3

1import requests 2import schedule 3 4s = requests.session() 5 6def job(): 7 url = "https://notify-api.line.me/api/notify" 8 token = "DBJdfhTOLTdjEbRCTnUc1TAB8WyV7doZJGOBohUhfWL" 9 headers = {"Authorization": "Bearer " + token} 10 message = 'ipython World' 11 payload = {"message": message} 12 response = s.post(url, headers=headers, params=payload) 13 14if __name__ == '__main__': 15 # 1分ごとに実行 16 schedule.every(1).minutes.do(job) 17 schedule.every(15).seconds.do(job) 18 19 while True: 20 schedule.run_pending() 21

投稿2019/05/19 12:53

yuokada

総合スコア550

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問