Wer weiß wie '.eml'-Mailanhänge auslesen werden?
und dessen Inhalt.
In der Mail-App wird der Anhang wie folgt angezeigt.
Hallo, du hast eine Nachricht über deine Jimdo-Seite https:// . . . . erhalten:
Name: xxx
Fotoclub (für externe Bewerter - bitte ausfüllen): xxx
Email-Adresse: xxx
Foto Nr 1: 5
Foto Nr 2: 7
Foto Nr 3: 10
Foto Nr 4: 6
Foto Nr 5: 6
Foto Nr 6: 6
usw.
Dieser Programmteil ließt die Mail aus.
Code: Alles auswählen
for mb in ('Inbox','Junk'): # Mailordner
m.select(mb)
result, data = m.uid('search', None, "ALL")
print('\n',mb,data,'\n')
resp, items = m.search(None, "(ALL)")
items = items[0].split()
if result == 'OK' and resp == 'OK' and items != []:
x=0
for num in data[0].split(): # Mail auslesen
emailid = items[x]
result, data = m.uid('fetch', num, '(RFC822)')
if result == 'OK':
x+=1
print("\n",x,". Mail\n")
resp, data1 = m.fetch(emailid, "(RFC822)")
email_body = data1[0][1]
msg = email.message_from_bytes(data[0][1])
if msg.get_content_maintype() == 'multipart':
von = msg['From'].split("<")[1].rstrip(">")
Zeit = msg['Date'][4:21]
Betreff = Umlaute(msg['subject'])
y=0
D1=False
for part in msg.walk(): # Mailanhang auslesen
print(part)
y+=1
D2=False
if part.get_content_maintype() != 'multipart' and \
part.get('Content-Disposition') is not None:
Dn = Umlaute(part.get_filename())
if Dn[len(Dn)-4:len(Dn)] == '.eml': # Bewerter Mail
print(Dn)
parseEmail(part)
Code: Alles auswählen
def parseEmail(file):
with open(file, 'rb') as fp:
msg = BytesParser(policy=policy.default).parse(fp)
print(msg)
----_com.samsung.android.email_123934937913270--
1 multipart None , kein Inhalt
Content-Type: multipart/alternative; boundary="--_com.samsung.android.email_123934943915191"
----_com.samsung.android.email_123934943915191
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64
RnJhbnogTW9zZXJPYmVyc3BlcnIgMjY0NjQ0IFNjaGFybnN0ZWluwqA=
----_com.samsung.android.email_123934943915191
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64
PGh0bWw+PGhlYWQ+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRl
eHQvaHRtbDsgY2hhcnNldD11dGYtOCI+PC9oZWFkPjxib2R5PjxkaXY+PGJyPjwvZGl2PjxkaXY+
PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXYgaWQ9ImNvbXBvc2Vy
X3NpZ25hdHVyZSI+PGRpdj48YiBkaXI9ImF1dG8iPjxmb250IGNvbG9yPSIjMDAwYjdjIiBzaXpl
PSI0Ij5GcmFueiBNb3NlcjwvZm9udD48L2I+PC9kaXY+PGRpdj48c3BhbiBkaXI9ImF1dG8iPjxm
b250IGNvbG9yPSIjMDAwYjdjIj5PYmVyc3BlcnIgMjY8L2ZvbnQ+PC9zcGFuPjwvZGl2PjxkaXY+
PHNwYW4gZGlyPSJhdXRvIj48Zm9udCBjb2xvcj0iIzAwMGI3YyI+NDY0NCBTY2hhcm5zdGVpbiZu
YnNwOzwvZm9udD48L3NwYW4+PC9kaXY+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
----_com.samsung.android.email_123934943915191--
2 multipart None , kein Inhalt
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64
RnJhbnogTW9zZXJPYmVyc3BlcnIgMjY0NjQ0IFNjaGFybnN0ZWluwqA=
3 text None , kein Inhalt
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64
PGh0bWw+PGhlYWQ+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRl
eHQvaHRtbDsgY2hhcnNldD11dGYtOCI+PC9oZWFkPjxib2R5PjxkaXY+PGJyPjwvZGl2PjxkaXY+
PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXYgaWQ9ImNvbXBvc2Vy
X3NpZ25hdHVyZSI+PGRpdj48YiBkaXI9ImF1dG8iPjxmb250IGNvbG9yPSIjMDAwYjdjIiBzaXpl
PSI0Ij5GcmFueiBNb3NlcjwvZm9udD48L2I+PC9kaXY+PGRpdj48c3BhbiBkaXI9ImF1dG8iPjxm
b250IGNvbG9yPSIjMDAwYjdjIj5PYmVyc3BlcnIgMjY8L2ZvbnQ+PC9zcGFuPjwvZGl2PjxkaXY+
PHNwYW4gZGlyPSJhdXRvIj48Zm9udCBjb2xvcj0iIzAwMGI3YyI+NDY0NCBTY2hhcm5zdGVpbiZu
YnNwOzwvZm9udD48L3NwYW4+PC9kaXY+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
4 text None , kein Inhalt
Content-Type: application/eml; name="169352603.eml"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="169352603.eml";
size=3229
UmV0dXJuLVBhdGg6IDxib3VuY2UtbWRfMzAwMjc4NjAuNWM1ODViNzUudjEtNWNkMTM2MjE1MGQw
NGQxNDllYmRlYWUzZTdhNzk3M2NAbWFpbC5qaW1kby1tYWlsLmNvbT4NClJlY2VpdmVkOiBmcm9t
IG1haWwxMzMtMTMxLmF0bDEzMS5tYW5kcmlsbGFwcC5jb20gKG1haWwxMzMtMTMxLmF0bDEzMS5t
YW5kcmlsbGFwcC5jb20gWzE5OC4yLjEzMy4xMzFdKQ0KCWJ5IG1haWwuZWNsaXBzby5kZSB3aXRo
IEVTTVRQUyBpZCA1NkYzNTIwQQ0KCWZvciA8d3VlaHJsZWl0bmVyQGVjbGlwc28uYXQ+OyBNb24s
IDA0IEZlYiAyMDE5IDE2OjM0OjE2ICswMTAwIChDRVQpDQpSZWNlaXZlZC1TUEY6IFBhc3MNCglp
ZGVudGl0eT1ib3VuY2UtbWRfMzAwMjc4NjAuNWM1ODViNzUudjEtNWNkMTM2MjE1MGQwNGQxNDll
YmRlYWUzZTdhNzk3M2NAbWFpbC5qaW1kby1tYWlsLmNvbTsgY2xpZW50LWlwPTE5OC4yLjEzMy4x
MzE7DQoJaGVsbz1tYWlsMTMzLTEzMS5hdGwxMzEubWFuZHJpbGxhcHAuY29tDQpES0lNLVNpZ25h
dHVyZTogdj0xOyBhPXJzYS1zaGEyNTY7IGM9cmVsYXhlZC9yZWxheGVkOyBzPW1hbmRyaWxsOyBk
PWppbWRvLmRlOw0KIGg9RnJvbTpTdWJqZWN0OlRvOk1lc3NhZ2UtSWQ6RGF0ZTpNSU1FLVZlcnNp
b246Q29udGVudC1UeXBlOkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc7IGk9bm8tcmVwbHlAamlt
ZG8uZGU7DQogYmg9c3Q0ZFN1cjFBTTJEWlF0WFdJMW9ObXdySWxGdWZnTDhTYmlEMHdCVzFnVT07
DQogYj1uK3RWV0xVVEozYTFBanZ5QXJ2SUNLeDNKUVQwT2tGRDFEcFdaU2JWdGM0anhaN1V0Q2dz
WlFpRmRIZnJVQnVMWm0zWHFPMjNlSzViDQogICAxaUo1c3RoU291TGwrRWJmekhBV2FDWTUxeXRL
Zm0rU2Y4NHJaRmphSVR0djY5TkVaSmhqOUZwdEtuNDliTW9xV2dIWEZSTWl0STBDDQogICAwUTFh
Z1QvVmh2a2p1UmdCVHJ3PQ0KUmVjZWl2ZWQ6IGZyb20gcG10YTAyLm1hbmRyaWxsLnByb2QuYXRs
MDEucnNnbGFiLmNvbSAoMTI3LjAuMC4xKSBieSBtYWlsMTMzLTEzMS5hdGwxMzEubWFuZHJpbGxh
cHAuY29tIGlkIGhiMWRuaTFzYXI4biBmb3IgPHd1ZWhybGVpdG5lckBlY2xpcHNvLmF0PjsgTW9u
LCA0IEZlYiAyMDE5IDE1OjM0OjEzICswMDAwIChlbnZlbG9wZS1mcm9tIDxib3VuY2UtbWRfMzAw
Mjc4NjAuNWM1ODViNzUudjEtNWNkMTM2MjE1MGQwNGQxNDllYmRlYWUzZTdhNzk3M2NAbWFpbC5q
aW1kby1tYWlsLmNvbT4pDQpES0lNLVNpZ25hdHVyZTogdj0xOyBhPXJzYS1zaGEyNTY7IGM9cmVs
YXhlZC9yZWxheGVkOyBkPW1hbmRyaWxsYXBwLmNvbTsNCiBpPUBtYW5kcmlsbGFwcC5jb207IHE9
ZG5zL3R4dDsgcz1tYW5kcmlsbDsgdD0xNTQ5Mjk0NDUzOyBoPUZyb20gOiANCiBTdWJqZWN0IDog
VG8gOiBNZXNzYWdlLUlkIDogRGF0ZSA6IE1JTUUtVmVyc2lvbiA6IENvbnRlbnQtVHlwZSA6IA0K
IENvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmcgOiBGcm9tIDogU3ViamVjdCA6IERhdGUgOiBYLU1h
bmRyaWxsLVVzZXIgOiANCiBMaXN0LVVuc3Vic2NyaWJlOyBiaD1zdDRkU3VyMUFNMkRaUXRYV0kx
b05td3JJbEZ1ZmdMOFNiaUQwd0JXMWdVPTsgDQogYj1uWWp2NHArbnpXS0RKakt5dkdpd2srVU1x
YjJtcjVCUFN2T3p6alpldjFlVzlYbUVoallUZUpNOVh2N2NIMXRROVBtV2FMDQogcS9ZMlcxUU5x
dk5VcFYvS3RSSUdkS2xlOWpNc2hZbmx1L3REYk92RzNHT3Bndk1YUDdKZUNaUHBFVmJUeHNlTktj
T3dXMlM0DQogNE5sREh0OEZ3OGhnRzRqdDBJcGN4ZUdabFVkR3M9DQpGcm9tOiBKaW1kbyA8bm8t
cmVwbHlAamltZG8uZGU+DQpTdWJqZWN0OiA9P3V0Zi04P1E/TmFjaHJpY2h0PTIwPUMzPUJDYmVy
PTIwaHR0cHM6Ly9mb3RvY2x1Yi1zY2hhcm5zdGVpbi1mZGouamltZG8uY29tLz89DQpSZXR1cm4t
UGF0aDogPGJvdW5jZS1tZF8zMDAyNzg2MC41YzU4NWI3NS52MS01Y2QxMzYyMTUwZDA0ZDE0OWVi
ZGVhZTNlN2E3OTczY0BtYWlsLmppbWRvLW1haWwuY29tPg0KUmVjZWl2ZWQ6IGZyb20gWzU0Ljc2
LjIzNS4xMDFdIGJ5IG1hbmRyaWxsYXBwLmNvbSBpZCA1Y2QxMzYyMTUwZDA0ZDE0OWViZGVhZTNl
N2E3OTczYzsgTW9uLCAwNCBGZWIgMjAxOSAxNTozNDoxMyArMDAwMA0KVG86IDx3dWVocmxlaXRu
ZXJAZWNsaXBzby5hdD4NClgtUmVwb3J0LUFidXNlOiBQbGVhc2UgZm9yd2FyZCBhIGNvcHkgb2Yg
dGhpcyBtZXNzYWdlLCBpbmNsdWRpbmcgYWxsIGhlYWRlcnMsIHRvIGFidXNlQG1hbmRyaWxsLmNv
bQ0KWC1SZXBvcnQtQWJ1c2U6IFlvdSBjYW4gYWxzbyByZXBvcnQgYWJ1c2UgaGVyZTogaHR0cDov
L21hbmRyaWxsYXBwLmNvbS9jb250YWN0L2FidXNlP2lkPTMwMDI3ODYwLjVjZDEzNjIxNTBkMDRk
MTQ5ZWJkZWFlM2U3YTc5NzNjDQpYLU1hbmRyaWxsLVVzZXI6IG1kXzMwMDI3ODYwDQpNZXNzYWdl
LUlkOiA8MzAwMjc4NjAuMjAxOTAyMDQxNTM0MTMuNWM1ODViNzUxZjQzNDcuNDQ3NzYxMDNAbWFp
bDEzMy0xMzEuYXRsMTMxLm1hbmRyaWxsYXBwLmNvbT4NCkRhdGU6IE1vbiwgMDQgRmViIDIwMTkg
MTU6MzQ6MTMgKzAwMDANCk1JTUUtVmVyc2lvbjogMS4wDQpDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9dXRmLTgNCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmlu
dGFibGUNCg0KSGFsbG8sIGR1IGhhc3QgZWluZSBOYWNocmljaHQgPUMzPUJDYmVyIGRlaW5lIEpp
bWRvLVNlaXRlIGh0dHBzOi8vZm90b2NsdWItPQ0Kc2NoYXJuc3RlaW4tZmRqLmppbWRvLmNvbS8g
ZXJoYWx0ZW46DQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KIE5h
bWU6IEthcmwgUmVkdGVuYmFjaGVyDQoNCkZvdG9jbHViIChmPUMzPUJDciBleHRlcm5lIEJld2Vy
dGVyIC0gYml0dGUgYXVzZj1DMz1CQ2xsZW4pOiBQZXR0ZW5iYWNoDQoNCkVtYWlsLUFkcmVzc2U6
IGsucmVkdGVuYmFjaGVyQGFvbi5hdA0KDQpGb3RvIE5yIDE6IDUNCg0KRm90byBOciAyOiA3DQoN
CkZvdG8gTnIgMzogMTANCg0KRm90byBOciA0OiA2DQoNCkZvdG8gTnIgNTogNg0KDQpGb3RvIE5y
IDY6IDYNCg0KRm90byBOciA3OiA2DQoNCkZvdG8gTnIgODogNw0KDQpGb3RvIE5yIDk6IDcNCg0K
Rm90byBOciAxMDogOA0KDQpGb3RvIE5yIDExOiA2DQoNCkZvdG8gTnIgMTI6IDgNCg0KTnV0emVy
IGhhdCBkaWUgRGF0ZW5zY2h1dHplcmtsPUMzPUE0cnVuZyBha3plcHRpZXJ0LiBEYXR1bS9VaHJ6
ZWl0OiAyMDE5LTAyPQ0KLTA0IDE2OjM0OjEyIENFVA0KDQoNCg==
bin neugierig, Danke.