Rešeno: pretvorite e-pošto Outlook v besedilno datoteko python

Glavna težava pri pretvorbi Outlookove e-pošte v besedilne datoteke je, da Outlook ne ohrani vedno informacij o oblikovanju v e-pošti. To lahko oteži razumevanje vsebine e-pošte.

-3.x email outlook text-files share|improve this question edited Jan 14 '15 at 8:13 asked Jan 14 '15 at 7:51 user3775557 1,8271133 add a comment| 2 Answers 2 active oldest votes up vote 0 down vote accepted You can use the email module to read the message and then save it to a file. The following code will read the message from your inbox and save it as a text file in your current directory. import os import imaplib import email def save_attachment(msg, download_folder="/tmp"): """Given a message, save its attachments to the specified download folder (default is /tmp)""" att_path = "No attachment found." for part in msg.walk(): if part.get_content_maintype() == 'multipart': continue if part.get('Content-Disposition') is None: continue filename = part.get_filename() if filename is not None: sv_path = os.path.join(download_folder, filename) content = part.get_payload(decode=True) try: with open(sv_path, 'wb') as fp: fp.write(content) except IOError: print("Error saving attachment to", sv_path) return att_path return sv-path userName = "yourmail@gmailcom" password = "yourpassword" mail = imaplib.IMAP4('imap-mailhost') mail .login(userName , password ) mail .select("inbox") result , data 

= mail .search(None, “ALL”) ids = data [ 0 ] id_list = ids.split() latest_email_id = id_list[- 1 ] result , data = mail .fetch(latest_email_id, “(RFC822)”) raw_email = podatki [ 0 ][ 1 ] # pretvori bajtni literal v odstranjevanje niza b” msg = email.message_from_string(raw_email) savepath = os.getcwd() + '/' + str(msg['Subject']) + '.txt' # ali savepath = 'C:\Users\Downloads\' strMsg=str(“Zadeva: “+msg['Zadeva']+”

“+”Od: “+msg['Od']+”

“+msg.get_payload()) fp=open(savepath,'w') fp.write(strMsg) fp.close() deli|izboljšaj ta odgovor urejeno 14. januar '15 ob 8:13 je odgovoril 14. januar '15 ob 7 :54 uporabnik3775557 1,8271133 dodaj komentar| Vaš osnutek odgovora shranjen osnutek zavržen Prijavite se ali se prijavite Prijavite se z Googlom Prijavite se s Facebookom Prijavite se z e-pošto in geslom Objavite kot gost Ime E-pošta Objavite kot gost Ime E-pošta zavrzite Z objavo odgovora se strinjate s politiko zasebnosti in Pogoji storitve. Ni odgovor, ki ga iščete? Prebrskajte po drugih vprašanjih, označenih z besedilnimi datotekami 3.x email outlook, ali postavite svoje vprašanje. vprašan pred 2 letoma ogledan 2486-krat aktiven pred 2 letoma Blog Stack Overflow Podcast #93 – A Very Spolsky Halloween Special Related 9Kako preberem e-pošto iz Gmaila s Pythonom?0Napaka Python imaplib pri poskusu povezave z gmail2Python IMAP4 prebere samo eno sporočilo iz Prejeto v Gmailu1Branje e-pošte s python imaplib1Gmail IMAP IDLE ne deluje na strežniku Ubuntu0Pridobite vsa sporočila iz računa gmail s python imaplib3Branje e-pošte iz računa gmail v python3imaplib napaka pri branju Gmail0Iskalna funkcija Python ImapLib ne deluje Hot Network Questions Zakaj je vodnim valom težko preklicati drug drugega? Kako lahko vrnem igralce v prejšnje mesto, ki so ga obiskali med ustvarjanjem lika? Ali naj svoj lik prepričam o prihajajočem zasuku ali ne? Ali naj uporabim »a« ali »an«, ko skrajšavam besedo? Kako opozoriti na neučinkovito računanje študenta? Zakaj je bil v Rockyju IV robot? Kaj omejuje hitrost svetlobe v posebni teoriji relativnosti, če lahko informacije med galaksijami potujejo hitreje od svetlobe? Ali AWS ponuja način za usmerjanje prometa HTTPS v dva različna primerka EC2 na podlagi poti imenika? Ali lahko delite nekaj posnetkov zaslona nadzornih plošč urejevalnika? Kako postanejo mehanizmi organske kemije sprejeti, če jih nikoli ne opazimo eksperimentalno (kot v ab initio teoriji molekularne orbite)? Kakšno odobritev potrebuje Donald Trump, da zgradi svoj zid? Če je 60 enako LX—— Zakaj ni 11 + 1 ura == 12?

Delo z besedilnimi datotekami

Obstaja nekaj načinov za delo z besedilnimi datotekami v Pythonu. Najenostavnejši način je, da odprete datoteko v urejevalniku besedil, kot je Beležnica ali TextEdit, in vnesete kodo.

Drug način je uporaba datotečnega predmeta v Pythonu. Datoteko lahko odprete s funkcijo open(), nato pa s funkcijama read() in write() preberete oziroma zapišete podatke v datoteko.

Končno lahko uporabite modul os.path za dostop do poti besedilne datoteke. Nato lahko s funkcijo gettext() pridobite informacije o datoteki, kot sta njeno ime in velikost.

Outlookova e-pošta

Outlook je priljubljen e-poštni odjemalec, ki ga uporablja na milijone ljudi po vsem svetu. Na voljo je na številnih različnih platformah, vključno z Windows, MacOS in Linux. Outlook ima bogat nabor funkcij, ki vam omogočajo enostavno upravljanje e-pošte, koledarja in stikov. V tej vadnici bomo razpravljali o tem, kako delati z Outlookovo e-pošto v Pythonu.

Najprej boste morali ustvariti primerek predmeta Outlook. To lahko storite z uporabo vgrajene funkcije Outlook():

Outlook = Outlook()

Nato boste morali ustvariti primerek predmeta Email. Ta objekt predstavlja posamezno e-poštno sporočilo v vašem nabiralniku:

e-pošta = e-pošta( 'vaš e-poštni naslov' )

Nato lahko dostopate do različnih lastnosti in metod predmeta Email:

email.subject() print (email.subject)

'Pozdravljen, svet!'

Podobni objav:

Pustite komentar