Rešeno: pretvoriti Outlook email u tekstualnu datoteku python

Posljednje ažuriranje: 09/11/2023

Glavni problem s pretvaranjem Outlook e-pošte u tekstualne datoteke je taj što Outlook ne čuva uvijek informacije o formatiranju u e-pošti. To može otežati razumijevanje sadržaja 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(Ništa, “SVI”) ids = podaci [ 0 ] id_list = ids.split() last_email_id = id_list[- 1 ] rezultat , podaci = mail .fetch(latest_email_id , “(RFC822)”) raw_email = podaci [ 0 ][ 1 ] # pretvara bajt literal u string uklanjanje b” msg = email.message_from_string(raw_email) savepath = os.getcwd() + '/' + str(msg['Subject']) + '.txt' # ili savepath = 'C:\Users\Downloads\' strMsg=str(“Subject: “+msg['Subject']+”

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

“+msg.get_payload()) fp=open(savepath,'w') fp.write(strMsg) fp.close() share|poboljšaj ovaj odgovor uređeno 14. januara '15. u 8:13. odgovorilo 14. januara '15. u 7. :54 user3775557 1,8271133 dodaj komentar| Nacrt vašeg odgovora je sačuvan nacrt odbačen Prijavite se ili se prijavite Prijavite se koristeći Google Prijavite se koristeći Facebook Prijavite se koristeći e-poštu i lozinku Objavite kao gost Ime E-pošta Objavite kao gost Ime e-pošte odbacite Objavljivanjem odgovora slažete se sa politikom privatnosti i uslovi korištenja. Nije odgovor koji tražite? Pregledajte druga pitanja označena sa 3.x tekstualnim datotekama Outlook e-pošte ili postavite svoje pitanje. upitan prije 2 godine pogledano 2486 puta aktivan prije 2 godine Blog Stack Overflow Podcast #93 – Posebna veza za Noć vještica Very Spolsky 9Kako da pročitam e-poštu s Gmaila sa Python-om?0Python imaplib greška kada pokušavam da se povežem na gmail2Python IMAP4 čita samo jednu poruku od Gmail inbox1Čitanje e-pošte sa python imaplib1Gmail IMAP IDLE ne radi na Ubuntu serveru0Preuzmite sve poruke sa gmail naloga sa python imaplib3Čitanje e-pošte sa gmail naloga u python3imaplib greška prilikom čitanja Gmail0Python ImapLib funkcija pretraživanja ne radi može Hot Network Pitanja za vodeni talas je teško jedan drugog? Kako mogu vratiti igrače u prethodni grad koji su posjetili tokom kreiranja lika? Da li da nateram svog lika da posumnja u nadolazeći preokret ili ne? Trebam li koristiti “a” ili “an” kada skraćujem riječ? Kako treba ukazati na neefikasnu računicu učenika? Zašto je u Rocky IV postojao robot? Šta ograničava brzinu svjetlosti u specijalnoj relativnosti ako informacije mogu putovati brže od svjetlosti između galaksija? Nudi li AWS način za usmjeravanje HTTPS prometa na dvije različite EC2 instance na osnovu putanje direktorija? Možete li podijeliti neke snimke ekrana kontrolnih panela uređivača? Kako mehanizmi organske hemije postaju prihvaćeni ako se nikada ne posmatraju eksperimentalno (kao u ab initio molekularnoj orbitalnoj teoriji)? Kakvo je odobrenje Donaldu Trampu potrebno da izgradi svoj zid? Ako je 60 jednako LX—— Zašto nije 11 ujutro + 1 sat == 12:00? Isprekidane cijevi u 3D Da li je tačno porediti nuklearizaciju Sjeverne Koreje sa nuklearizacijom Pakistana i Indije?” klasa fizzbuzz(): Šta ograničava brzinu svjetlosti u specijalnoj relativnosti ako informacije mogu putovati brže od svjetlosti između galaksija?” klasa fizzbuzz(): Koliko su manje bile srednjovjekovne domaće životinje u Engleskoj nego danas Zašto je Harry Truman izabran za potpredsjednika 1944. godine umjesto Henryja Wallacea?'prosječno': nevažeća sintaksa više vruća pitanja feed pitanja lang-py o nama pomoć u turi blog chat podaci pravni podaci politika privatnosti radite ovdje oglašavanje informacije mobilni kontakt povratne informacije Tehnologija Život / Umjetnost Kultura / Rekreacija Nauka Ostalo Stack Overflow Server Fault Super korisnik Web aplikacije Pitajte Ubuntu Webmasteri Razvoj igara TeX – LaTeX Softverski inženjering Unix i Linux Pitajte drugačije (Apple) WordPress razvoj Geografski informacioni sistemi Elektrotehnika Android entuzijasti Sigurnost informacija Administratori baza podataka Drupal odgovori SharePoint korisničko iskustvo Mathematica Salesforce ExpressionEngine® odgovori Kriptografija Pregled koda Magento obrada signala Raspberry Pi programiranje Zagonetke i kod Golf više (7) Fotografija Naučna fantastika i fantazija Grafički dizajn Filmovi i TV Muzika: Praksa i teorija Iskusni savjeti (kuhanje) Poboljšanje doma Lične finansije i novac Akademija više (8) Engleski jezik i upotreba Skeptici Mi Yodeya (judaizam) Putovanja Kršćanstvo Učenici engleskog jezika Japanski jezik Arkade (igre) Bicikli Igre igranja uloga Anime & Manga Održavanje i popravka motornih vozila više (17) MathOverflow Matematika Unakrsno validirano (statistika) Teorijska informatika Fizika Hemija Biologija Informatika Filozofija više (3) Meta Stack Exchange Stack aplikacije Area 51 Stack Overflow Talent dizajn stranice / logo © 2017 Stack Exchange Inc; korisnički doprinosi licencirani pod cc by-sa 3.x od strane sa.stackoverflow.com hostovano na serverfault

Rad sa tekstualnim fajlovima

Postoji nekoliko načina rada s tekstualnim datotekama u Pythonu. Najjednostavniji način je da otvorite datoteku u uređivaču teksta kao što je Notepad ili TextEdit i unesete svoj kod.

Drugi način je korištenje objekta datoteke u Pythonu. Možete otvoriti datoteku pomoću funkcije open(), a zatim koristiti funkcije read() i write() za čitanje i pisanje podataka u datoteku.

Konačno, možete koristiti os.path modul za pristup putanji tekstualne datoteke. Zatim možete koristiti funkciju gettext() da dobijete informacije o datoteci, kao što su njeno ime i veličina.

Outlook e-pošta

Outlook je popularan klijent e-pošte koji koriste milioni ljudi širom svijeta. Dostupan je na mnogim različitim platformama, uključujući Windows, MacOS i Linux. Outlook ima bogat skup funkcija koji vam omogućava da lako upravljate e-poštom, kalendarom i kontaktima. U ovom vodiču ćemo razgovarati o tome kako raditi s Outlook e-poštom u Pythonu.

Prvo, morat ćete kreirati instancu Outlook objekta. To možete učiniti korištenjem ugrađene funkcije Outlook():

Outlook = Outlook()

Zatim ćete morati kreirati instancu Email objekta. Ovaj objekat predstavlja pojedinačnu e-poruku u vašem poštanskom sandučetu:

email = Email( 'VašaEmailAddress')

Tada možete pristupiti raznim svojstvima i metodama Email objekta:

email.subject() print (email.subject)

'Zdravo svijete!'

Slični postovi: