python urllib2.urlopenバグ:タイムアウトエラーは私のインターネット接続をもたらしますか?

StackOverflow https://stackoverflow.com/questions/3974452

  •  09-10-2019
  •  | 
  •  

質問

何か間違ったことをしているかどうかはわかりませんが、Pythonスクリプトが私のインターネット接続をもたらすことだと100%確信しています。

主にヘッドリクエストを使用して、各ファイルの正確なサイズを取得するために、主にコンテンツレングスのために、何千ものファイルヘッダー情報をこするためのPythonスクリプトを書きました。

サンプルコード:

class HeadRequest(urllib2.Request):
    def get_method(self):
        return "HEAD"

response = urllib2.urlopen(HeadRequest("http://www.google.com"))
print response.info()

問題は、数時間の実行後、スクリプトがUrlopen Errorがタイミングを出し始め、私のインターネット接続はそれ以降ダウンしています。そして、私がそのスクリプトを閉じた直後に私のインターネット接続は常に戻ってきます。最初は、つながりが安定していないかもしれないと思っていましたが、数回実行した後、スクリプトの欠陥であることが判明しました。

理由はわかりません、これはバグと見なされるべきですよね?または、私のISPは私をそのようなことをしていたことを禁止しましたか? (私はすでにプログラムを各リクエストを10秒待つように設定しました)

ところで、私はVPNネットワークを使用しています、それはこれと関係がありますか?

役に立ちましたか?

解決

ISPまたはVPNプロバイダーは、大量の疑わしいトラフィックのためにあなたを制限しているか、ルーターまたはVPNトンネルが半分のオープン接続で詰まっているため、あなたを制限していると思います。 Consumer Internetは、Spider-Typeアクティビティを実際に意図していません。

他のヒント

「スクリプトは、タイミングで拡大されたエラーを捨て始めます」

推測し始めることさえできません。

コンピューター上のデータを収集し、質問にそのデータを含める必要があります。

別のコンピューターを入手してください。スクリプトを実行します。他のコンピューターのインターネットアクセスもブロックされていますか?それともまだ機能しますか?

  • 両方のコンピューターがブロックされている場合、それはあなたのソフトウェアではなく、あなたのプロバイダーです。 質問を更新してください この情報とあなたがそれをどのように得たか。

  • スクリプトを実行しているコンピューターのみが停止した場合、それはあなたのプロバイダーではなく、OSリソースが使い果たされます。これは、メモリ、ソケット、またはファイル記述子である可能性があるため、診断が困難です。通常、そのソケット。

オペレーティングシステム用のifconfig/ipconfig診断ソフトウェアを見つける必要があります。必要がある アップデート どのオペレーティングシステムを使用しているかを正確に述べるあなたの質問。この診断ソフトウェアを使用して、システムがシステムを乱雑にしているオープンソケットの数を確認する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top