[python] Kodovani emajlu

Jan Matejka matejka na cat.cz
Úterý Říjen 11 17:40:12 CEST 2005


> Takze 
> zjistit z majlu kodovani a prevest. Urcite to nejak pujde 
> pomoci package email, ale nenapada me ted dostatecne 
> elegantni a jednoduche reseni.

Pokud se jedna o MIME email, tak ten se muze skladat z vice casti, kazda z
nich muze mit ruzne kodovani. Kodovani kazde casti ziskate pomoci metody
get_content_charset()

tohle by mel vypsat strukturu zpravy:

def getStruct(msg,lev=0):
	ret=string.rstrip("%s%s %s %s" % (' ' *
(lev*4),str(msg.get_content_type()),str(msg.items()),msg.get_content_charset
()))+'\r\n'
	if msg.get_content_maintype() in ['multipart','message'] :
		for part in msg.get_payload():
			ret=ret+getStruct(part,lev+1)
	return ret

print getStruct(msg)

Nenapada me zadne jine ciste reseni nez rekurzivne projit strukturou emailu
a vytvorint novy email se stejnou strukturou. Hlavicky i tela jednotlivych
za behu prekodovat do pozadovaneho kodovani (pres prostrednika unicode).

Jan Matejka




Další informace o konferenci Python