2016-12-06 28 views
0

私はpdf添付ファイル付きの電子メールを送信するpython3スクリプトを作成しようとしています。私はvideo tutorialを以下だと、次のようにobjをSMTPサーバを作成しました:python3 smtplibがsmtpサーバobjを作成するのが非常に遅い

Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit (Intel)] on win32 
Type "copyright", "credits" or "license()" for more information. 

>>> import smtplib 
>>> server=smtplib.SMTP('smtp.gmail.com',587) 

コードがハングし、私はなぜ知らない場所です。 以下のタイムアウトステートメントを5秒間含めることを試みましたが、それでも5秒間もハングします。私はかなり速い応答smtp.gmail.comにpingを実行することができ :

>>> import smtplib 
>>> server=smtplib.SMTP('smtp.gmail.com',587,5) 

ping smtp.gmail.com 
Reply from 173.194.200.108: bytes=32 time=35ms TTL=41 
Reply from 173.194.200.108: bytes=32 time=35ms TTL=41 

telnet smtp.gmail.com 587 
Trying 173.194.200.109... 
Connected to smtp.gmail.com. 
Escape character is '^]'. 

私は次のことを除外しています。 GmailのIMAPは既に有効です。 私はそれがIDEだとは思わない、私はIDLEとVSコードの両方を試しました、そして、それは同じ結果です。 私はポート587でsmtp.gmail.comにtelnetすることもできますので、ファイアウォールは賢明です。 IDEを管理モードで実行することもできません。 私はsmtplibのpydocを見てきました。私のコマンドはうまくいくはずです。

私は何が起こっているのか分かりません。誰もこれを見たことがありますか?

編集:私もPython2で試しましたが、この動作は同じです。 EDIT2:wiresharkを使用してテストを実行しました。私は私とsmtpメールサーバとの間の3way tcpハンドシェイクを見ることができます。しかしそれ以降のコミュニケーションはありません。

+0

python2.7を試しましたか?または任意のバージョンのpython2? –

+0

いいえ私はまだそれを試していない。私はまた、Gmailのsmtpの代わりに偽のホスト名を使ってみました。同じ反応があります。 –

+0

は2.7、同じ結果を試しました。 –

答えて

0

企業内のローカライズされた内部ファイアウォールは、これが機能しなくなる原因です。

関連する問題