Jak odstranit z mailu prilohy
Ondrej Sury
sury.ondrej na globe.cz
Pondělí Listopad 18 12:55:06 CET 2002
Pavel Lisy <pali na tmapy.cz> writes:
Obcas to na nejakem spamu spadne...
#!/usr/bin/env python2.2
import email
import os
import email.Message as _msg
import string
msg = email.message_from_file(os.fdopen(0));
nmsg = _msg.Message()
recipient = os.getenv("RECIPIENT",msg['delivered-to'])
for label in ('From','To','Date','Subject'):
value = msg[label]
if value == 'None':
value = 'empty'
nmsg[label] = value;
for part in msg.walk():
if part.get_main_type('text').lower() == 'text':
for label in ('Content-Transfer-Encoding','Content-Type'):
if part[label] != None:
nmsg[label] = part[label]
payload = part.get_payload()
if payload == None:
payload = 'prazdne telo/empty body'
nmsg.add_payload('T:'+recipient+'-'+payload)
break
try:
print nmsg.as_string()
except:
# Spatne se nam sestavila nmsg :(
print msg.as_string()
fn = os.tempnam("/var/notify",recipient)
fp = file(fn,"w")
fp.write(msg.as_string())
fp.close()
> Dobry den
>
> potrebuji vyse zminene pro dve veci.
>
> 1. Uchovavame postu v Cyrus IMAP serveru a z duvodu uspory mista, by
> uzivatele chteli z existujici posty odstranit vsechny prilohy. V
> idealnim pripade by si to meli delat sami, stacil by mi ale take nejaky
> spolehlivy nastroj, ktery by to pomoci skriptu vyparal z nejakeho mail
> folderu. Cyrus IMAP uklada jednotlive maily do zvlastnich souboru, takze
> to bude nejspis format MAILDIR.
>
> 2. Pri preposilani emailu na sms dochazi k problemum s velkymi maily s
> prilohami. Jsem schopen to vyresit nastavenim filtru na velikost emailu,
> ale lepsi by bylo, vyriznout prilohu a poslat to dal.
>
> Predpokladam, ze to jiz mnoho lidi muselo resit, ale ani na google nebo
> v archivu jsem nic moc nenasel.
>
> OTAZKY:
>
> 1) Jak vyse zminene resite? (existuje nejaky std. nastroj, nebo si to
> pise kazdy sam)
>
> 2) Jake jsou s tim zkusenosti? (spolehlivost rozpoznani prilohy, ...)
>
> 3) Uvitam odkazy na nejakou dokumentaci ci pokec k temto tematum.
>
> Pavel Lisy
--
Ondrej Sury - CIO Globe Internet s.r.o. http://globe.cz/
Tel: +420(2)35365000 Fax: +420(2)35365009 Planickova 1, 162 00 Praha 6
Další informace o konferenci Linux