<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-2" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
<pre wrap="">A ještě toto mi nedá spát:
</pre>
<br>
jak zjistit obecně, které parametry se tak dají načíst z výše uvedené
konstrukce z instance msg['parametr'] ?<br>
<br>
a dále:<br>
msg['date'] mi dá například výsledek: Mon, 25 Jul 2011 12:07:26 +0200<br>
<br>
Je v Pythonu funkce na převod do formátu pro zapsání do
tabulky mysql, v tomto příkladu by to mělo být: 2011-07-25 14:07:26<br>
<br>
Zatím to dělám dvěma dotazy sql:<br>
<br>
SELECT STR_TO_DATE('Mon, 25 Jul 2011 12:07:26', '%a, %d %b %Y %T ');<br>
a následně z jeho výsledku:<br>
SELECT CONVERT_TZ('2011-07-25 12:07:26','+00:00','+02:00');<br>
<br>
Děkuji za inspiraci<br>
<br>
V.L.<br>
<br>
<br>
Michal Molhanec napsal(a):
<blockquote cite="mid:4E2F065A.6090502@seznam.cz" type="cite">
<pre wrap="">Dne 26.7.2011 17:40, "Ing. Vladislav Ludík" napsal(a):
</pre>
<blockquote type="cite">
<pre wrap="">Zdravím všechny znalé pythonu.
Může mi někdo poradit s dekódováním hlaviček emailů ?
Jde o toto:
Ve složce /var/mail/ na linuxu přicházející emaily potřebuju elegantně zdekódovat.
Co se týká vlastních zpráv, nemám problém:
def ebox(inbox):
'Zpracuje email inbox'
fp = open(inbox, 'rb')
mbox = mailbox.UnixMailbox(fp, email.message_from_file)
for msg in mbox:
for part in msg.walk():
if part.get_content_maintype() == 'text':
data = part.get_payload(decode=True)
# zpracuju data
Problém mám jen s hlavičkama. Když použiju například
headers = Parser().parse(fp)
tak ten ve výsledku dává při více zprávách za sebou vždy první nalezený objekt, ale další už ne:
print 'To: %s' % headers['to']
print 'From: %s' % headers['from']
print 'Subject: %s' % headers['subject']
Můj dotaz tedy je: jak skloubit jednoduše obě funkce?
Složitě to umím.
</pre>
</blockquote>
<pre wrap=""><!---->
Něco jako
def ebox(inbox):
'Zpracuje email inbox'
fp = open(inbox, 'rb')
mbox = mailbox.UnixMailbox(fp, email.message_from_file)
for msg in mbox:
print 'To: %s' % msg['to']
print 'From: %s' % msg['from']
print 'Subject: %s' % msg['subject']
for part in msg.walk():
if part.get_content_maintype() == 'text':
data = part.get_payload(decode=True)
# zpracuju data
by nefungovalo?</pre>
</blockquote>
<br>
</body>
</html>