Python imaplibを使用してIMAP(Gmail)のプッシュ通知を有効にするにはどうすればよいですか?
質問
新しいメールがあるかどうかを確認するたびにGmailをポーリングせずに、imaplibを使用してGmailアカウントを監視する方法はありますか。または、言い換えれば、ポーリング間の遅延時間の代わりにすぐに処理できるように、スクリプトに新しいメッセージが通知されるようにするだけです。
IMAPプロトコルがIDLEコマンドでこれをサポートしていることがわかりますが、imaplibのドキュメントにはドキュメントが記載されていないため、これに関するヘルプは素晴らしいでしょう!
解決
imaplibにはこれを行うものは何もありません、AFAIK(ディスクレーマー:Pythonについてはほとんど知らない)、しかし、imaplibと同じインターフェースを持つPythonのIDLE拡張機能を実装しているようです(これは可能です)既存のコードを変更せずにスワップアウトするようです):
他のヒント
ProcImap をご覧ください。これは、libimapおよびlibimap2上のより抽象的なフレームワークであり、IMAPサービスを処理するための優れたソリューションを提供します。あなたが探しているものだけでなく、私にとってもそうです。私はあなたと同じ問題を抱えており、ProcImapを見つけました。自分で試してみます。
このリンクは、IMAP IDLEの使用例を示しています。 http://blog.timstoop.nl/2009/03/11/python-imap-idle-with-imaplib2/
casperOneの回答でリンクされているのと同じライブラリ(imaplib2)を使用します。