私はpython Twitter-pyを使用してTwitterスペースをクロールするために書いています。実行回数(約1回)、Twitterのレート制限がまだ超えていないときに、このエラーが発生しました。
[Errno 10054] An existing connection was forcibly closed by the remote Host.
この問題の考えられる原因とこれを解決する方法は何ですか?
私は検索を行ったところ、多くのリクエストが原因でTwitterサーバー自体が接続を強制的に終了する可能性があることがわかりました。
事前にどうもありがとうございました。
これは、キープアライブ中に接続がタイムアウトしたかどうかで、接続の両側が一致しないために発生する可能性があります。 (サーバーは、アイドル状態が長すぎるため、サーバーが閉じているように、コードは接続を再利用しようとします。)基本的には、新しい接続で操作を再試行する必要があります。 (ライブラリがこれを自動的に行わないことに驚いています。)
などの多くの原因があります
問題を詳細に調べるには、Wiresharkを使用できます。
または、単に再要求または再接続することができます。
私にとって、この問題はSAP Hanaデータベースに接続しようとしたときに発生しました。このエラーが発生したとき、
OperationalError:HANAサーバーへの接続が失われました(ConnectionResetError(10054、「既存の接続はリモートホストによって強制的に閉じられました」、なし、10054、なし))
接続用のコード(下記を参照)を実行しようとすると、そのエラーが再度発生し、機能しました。
import pyhdb connection = pyhdb.connect(Host = "example.com"、port = 30015、user = "user"、password = "secret") cursor = connection.cursor() cursor.execute( "SELECT 'Hello Python World' FROM DUMMY") cursor.fetchone() connection.close()
サーバーが接続を拒否したためです。しばらく待ってから再試行する必要がある場合があります。ログオフしてから再度ログインして、Hana Studioを閉じてみてください。コードを何度も実行し続けます。