Wpis z mikrobloga

Mirki, ratunku, uczę się Pythona i nie ogarniam wciąż kilku rzeczy!

Znalazłem skrypt drukujący ostatnie maile ze skrzynki.

Generalnie skrypcik prosty także myślałem ,że bez zagłębiania się zrozumiem o co w nim chodzi.

Niestety... nie wszystko okazało się tak proste ( ͡° ͜ʖ ͡°)

Źródło:

#!/usr/bin/python

import imaplib

import sys

import email

import re

#folder=sys.argv[1]

FOLDER='Employment'

LOGIN='example.address@gmail.com'

PASSWORD='xxxxxxxxxxxx'

IMAP_HOST = 'imap.gmail.com' # Change this according to your provider

email_list = []_
_
email_unique = []

mail = imaplib.IMAP4_SSL(IMAP_HOST)

mail.login(LOGIN, PASSWORD)

mail.select(FOLDER)

**result, data = mail.search(None, 'ALL')**

ids = data[0]

id_list = ids.split()_
_
for i in id_list:

typ, data = mail.fetch(i,'(RFC822)')

for response_part in data:_
_
if isinstance(response_part, tuple):

msg = email.message_from_string(response_part[1])_
_
sender = msg['from'].split()[-1]_
_
address = re.sub(r'[<>]','',sender)_
_
# Ignore any occurences of own email address and add to list_
_
if not re.search(r'' + re.escape(LOGIN),address) and not address in email_list:

email_list.append(address)

print address

Co robi zmienna result (pogrubiona linijka) skoro występuje tylko raz ?

Czy mnie się coś nie udało i to nie jest zmienna ? Usunięcie słowa result powoduje wywalenie errora.

Wykopowicze Help.

#programowanie #python
  • 8
@Sarpens: Na górze masz odnośnik - źródło. Byłem przygotowany na taką ewentualność ( ͡° ͜ʖ ͡°)

@Maav: Dzięki, nawet nie wiedziałem ,ze takie coś istnieje.

@Szarlejowiec: Dzięki. Ale jest to jakiś stały mechanizm ? Można o tym gdzieś poczytać dlaczego tak a nie inaczej ?