كيف يمكنني تمكين دفع الاخطار عن IMAP (جي ميل) باستخدام بيثون imaplib؟

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

  •  05-07-2019
  •  | 
  •  

سؤال

هل هناك طريقة لمراقبة حساب Gmail باستخدام imaplib دون جوجل الاقتراع في كل مرة أريد أن أرى إذا كان هناك بريد جديد. أو بعبارة أخرى، أريد فقط البرنامج النصي ليتم إعلامك رسالة جديدة حتى أتمكن من معالجته على الفور بدلا من أي وقت فجوة بين صناديق الاقتراع.

وأنا أرى أن بروتوكول IMAP يدعم هذه مع الأمر الراكد، ولكن لا أستطيع أن أرى أي شيء موثق معها في مستندات imaplib، لذلك فإن أي مساعدة في هذا سيكون رائعا!

هل كانت مفيدة؟

المحلول

وليس هناك شيء في imaplib أن يفعل هذا، AFAIK (اخلاء المسؤولية: أعرف القليل جدا عن بيثون)، ومع ذلك، يبدو أن شخصا ما قد نفذت على توسيع فضاء لبيثون التي لديها واجهة نفس imaplib (والتي يمكنك مبادلة خارج مع أية تغييرات على التعليمات البرمجية الموجودة، على ما يبدو):

https://github.com/imaplib2/imaplib2

نصائح أخرى

ProcImap . إنها إطار أكثر تجريدا على رأس libimap وlibimap2، وتوفير حل لطيفة للتعامل مع خدمات IMAP. يبدو فقط الاشياء التي تبحث عنها، وبالنسبة لي أيضا. أواجه حق نفس المشكلة معكم وفقط وجدت ProcImap. سأحاول لنفسي.

وهذا رابط يوضح مثال باستخدام IMAP IDLE: <لأ href = "http://blog.timstoop.nl/2009/03/11/python-imap-idle-with-imaplib2/" يختلط = "نوفولو" > http://blog.timstoop.nl/2009/03/11/python-imap-idle-with-imaplib2/

ويستخدم نفس مكتبة مرتبطة ردا casperOne في (imaplib2).

وهناك بسيطة التصحيح المقترحة على الموقع تنفيذ href="http://tools.ietf.org/html/rfc2177" rel="nofollow"> RFC 2177 القيادة IMAP IDLE بطريقة متزامن (الانتظار لأكثر من 1 خادم IMAP لديك لاستخدام المواضيع أو غيرها من وسائل التنفيذ المتوازي). ويستخدم stdlib تحديد الانتظار على مقبس بما في ذلك المهلة. rel="nofollow"> في نهاية المطاف أن يضاف هذا التصحيح سوف ولكن الاختبارات يجب أن تكون مكتوبة أولا . و الخمول قيادة هو ما كنت <لأ href = "https://blogs.oracle.com/ chienr / دخول / gmail_supports_imap_idle "يختلط =" نوفولو "> يحتاج للحصول على بريد جوجل IMAP دفع الإخطار. الأمل، وهذا سيساعد:)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top