اختر الرسائل من البريد الوارد وحدها عبر poplib
سؤال
ولست بحاجة لتنزيل رسائل البريد الإلكتروني من البريد الوارد جوجل فقط باستخدام poplib.Unfortunately أنا لا أرى أي خيار لتحديد علبة وحده، وpoplib يعطيني رسائل البريد الإلكتروني من العناصر المرسلة للغاية.
وكيف يمكنني تحديد رسائل البريد الإلكتروني فقط من البريد الوارد؟
وأنا لا أريد أن استخدام أي بريد جوجل مكتبات محددة.
المحلول
وPOP3 لا يوجد لديه مفهوم "المجلدات". إذا جوجل يظهر لكم على حد سواء "أرسلت" وكذلك البريد "تلقت '، ثم هل حقا لم يكن لديك أي خيار سوى أن تلقي كل ما البريد الإلكتروني.
ولعل أن تكون أفضل حالا باستخدام IMAP4 بدلا من POP3. بيثون ديه المكتبات التي ستعمل مع خادم IMAP4 جوجل ل.
نصائح أخرى
وأفترض أنك قد تمكين الوصول POP3 / IMAP إلى حساب Gmail.
وهذا هو نموذج التعليمات البرمجية:
import imaplib
conn= imaplib.IMAP4_SSL('imap.googlemail.com')
conn.login('yourusername', 'yourpassword')
code, dummy= conn.select('INBOX')
if code != 'OK':
raise RuntimeError, "Failed to select inbox"
code, data= self.conn.search(None, ALL)
if code == 'OK':
msgid_list= data[0].split()
else:
raise RuntimeError, "Failed to get message IDs"
for msgid in msgid_list:
code, data= conn.fetch(msgid, '(RFC822)')
# you can also use '(RFC822.HEADER)' only for headers
if code == 'OK':
pass # your code here
else:
raise RuntimeError, "could not retrieve msgid %r" % msgid
conn.close()
conn.logout()
وأو شيء من هذا القبيل.
وهذا الرمز جافا يوحي أنه يمكنك اختيار "مجلد" خاص لتحميل، حتى عند استخدام POP3. مرة أخرى، وهذا هو باستخدام جافا، بيثون لا حتى YMMV.
<وأ href = "http://blog.prolificprogrammer.com/2008/04/04/how-to-search-gmail-from-the-comfort-of-your-command-line" يختلط = "نوفولو noreferrer "> كيفية تحميل رسالة من بريد جوجل باستخدام جافا (بلوق وظيفة يناقش دفع المحتوى في محرك البحث لوسين محليا)