Portál AbcLinuxu, 3. května 2025 22:54

Přehled složek v IMAPu

29.11.2005 19:24 | Přečteno: 1025× | Skripty | poslední úprava: 9.12.2005 16:33

Už opět nastala situace, že mi napsání vlastního skriptu připadalo jednodušší než hledání hotového nástroje :-). Pokud se tedy někdo potřebuje podívat na stav složek na IMAPu, může použít následující skriptík.

#!/usr/bin/python
import sys
import imaplib

m = imaplib.IMAP4('SERVER')
res = m.login('USERNAME', 'PASSWORD')
if res[0] != 'OK':
    sys.stderr.write("login: %s\n" % str(res))
    sys.exit(1)

typ, list = m.list()
if typ != 'OK':
    sys.stderr.write("list:")
    sys.exit(2)

for item in list:
    vals = item.split()
    name = vals[2][1:][:-1]
    typ, val = m.status(name, '(UNSEEN RECENT)')
    if typ != 'OK':
        sys.stderr.write("status:")
        sys.exit(2)
    print val[0]
       

Hodnocení: 93 %

        špatnédobré        

Anketa

Používáte IMAP?
 (78 %)
 (22 %)
Celkem 36 hlasů

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

vencour avatar 29.11.2005 19:48 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
Odpovědět | Sbalit | Link | Blokovat | Admin

Ok, upřesním něco o IMAPu4.

Je specifikován RFC-2060, původní IMAP byl popsán RFC-1730.

Imap standardně "běží" na portu 143.

Klient příkazy čísluje, jelikož odpovědi mohou přicházet v libovolném pořadí.

Příkazy:

CAPABILITY - vypíše "featury"
LOGIN uživatel heslo - zalogování, přejde se do autentizovaného stavu
CREATE, DELETE, RENAME, LIST - pracuje se s poštovní schránkou, jméno schránky se píše v uvozovkách
SUBSCRIBE, LSUB, UNSUBSCRIBE - klient tím sdělí serveru, aby označil soubor jako poštovní schránku
STATUS - umožní vypsat info o schránce bez otevření této schránky
SELECT a EXAMINE - otvírá poštovní schránku v r/w nebo r/o režimu
COPY - kopíruje zprávy z otevřené do zvolené schránky
SEARCH - umožňuje vyhledávání ve schránce
FETCH - umožnňuje stahovat ze serveru zprávu
STORE - umožňuje změnit atibuty položek ve schránce
EXPUNGE - umožní smazat označené zprávy
CLOSE - uzavře poštovní schránku a přejde do režimu "autentizovaný stav"
(Ne, že si to pamatuju z hlavy, ale mám odkud opisovat :-) )

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
30.11.2005 12:15 tyctor
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
Odpovědět | Sbalit | Link | Blokovat | Admin
dobry den

ako by taky skript vyzeral pre imap ktory ma nastavene SSL connection a secure authenfication?

podporuje python aj taketo nastavenia?

diky
30.11.2005 12:23 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
Použije se IMAP4_SSL místo IMAP4, viz dokumentace.
30.11.2005 14:51 tyctor
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
ano to som skusil hned ako prve ale vracia to tuto chybu:

imaplib.error: Clear text passwords have been disabled for this protocol.

takze uz len musism zistit cim to heslo zakodovat ;o)

ale aj tak diky za odpoved
30.11.2005 14:57 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
Použij login_cram_md5 místo login … všechno je v dokumentaci.
30.11.2005 15:15 tyctor
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
hej to som skusal, ale to musi podporovat imap server...

imaplib.error: The specified authentication package is not supported

iny sposob python implementovvany asi nema...
30.11.2005 15:23 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
A co tvůj server umí? Mně funguje normálně login s IMAP4_SSL.
30.11.2005 15:38 tyctor
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
to neviem ako zistit... :o(

telnet na port 143 mi vrati * BYE Connection refused

a na port 993 mi po zadani akehokolvek prikazu zavrie spojenie (asi preto, ze prikaz nejde sifrovane)
vencour avatar 30.11.2005 15:53 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu

Dyť v imapu je právě příkaz CAPABILITY, co umožňuje vidět, co server nabízí - to to v pythonu nic takového neexistuje?

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
30.11.2005 18:12 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
To je dostupné jako atribut capabilities. Jinak libovolnou autentizační metodu lze udělat pomocí authenticate(), je ovšem potřeba napsat funkci, která na výzvu serveru vrátí správný auntetizační text.
30.11.2005 18:51 tyctor
Rozbalit Rozbalit vše Re: Přehled složek v IMAPu
nejaky atribut v imaplib? nikde tam to slovo nevidim

niekde Python Library Reference 11.10, 11.10.1, 11.10.2?

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.