Επιλύθηκε: μετατροπή email του Outlook σε αρχείο κειμένου python

Το κύριο πρόβλημα με τη μετατροπή email του Outlook σε αρχεία κειμένου είναι ότι το Outlook δεν διατηρεί πάντα τις πληροφορίες μορφοποίησης στο email. Αυτό μπορεί να δυσκολέψει την κατανόηση του περιεχομένου του μηνύματος ηλεκτρονικού ταχυδρομείου.

-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() last_email_id = id_list[- 1 ] result , data = mail .fetch(latest_email_id , “(RFC822)”) raw_email = data [ 0 ][ 1 ] # μετατρέπει byte κυριολεκτικά σε συμβολοσειρά αφαιρώντας b” msg = email.message_from_string(raw_email) savepath = os.getcwd() + '/' + str(msg['Subject']) + '.txt' # ή savepath = 'C:\Users\Downloads\' strMsg=str("Subject: "+msg['Subject']+"

"+"From: "+msg['From']+"

"+msg.get_payload()) fp=open(savepath,'w') fp.write(strMsg) fp.close() share|βελτίωση αυτής της απάντησης επεξεργασία 14 Ιανουαρίου '15 στις 8:13 Απάντηση 14 Ιανουαρίου '15 στις 7 :54 user3775557 1,8271133 προσθέστε ένα σχόλιο| Το πρόχειρο της απάντησής σας αποθηκευμένο πρόχειρο απορρίφθηκε Εγγραφείτε ή συνδεθείτε Εγγραφείτε χρησιμοποιώντας το Google Εγγραφείτε μέσω Facebook Εγγραφείτε χρησιμοποιώντας το email και τον κωδικό πρόσβασης Δημοσίευση ως επισκέπτης Όνομα Email Δημοσίευση ως επισκέπτης Όνομα Email Απόρριψη Με τη δημοσίευση της απάντησής σας, συμφωνείτε με την πολιτική απορρήτου και Όροι χρήσης. Δεν είναι η απάντηση που ψάχνετε; Περιηγηθείτε σε άλλες ερωτήσεις με ετικέτα 3.x email outlook αρχείων κειμένου ή κάντε τη δική σας ερώτηση. ρωτήθηκε πριν από 2 χρόνια προβλήθηκε 2486 φορές ενεργό πριν από 2 χρόνια Podcast υπερχείλισης στοίβας ιστολογίου #93 – A Very Spolsky Halloween Special Related 9Πώς μπορώ να διαβάσω ένα μήνυμα ηλεκτρονικού ταχυδρομείου από το Gmail με την Python;0Σφάλμα Python imaplib όταν προσπαθώ να συνδεθείτε στο gmail2Python IMAP4 διαβάστε μόνο ένα μήνυμα από Gmail inbox1Ανάγνωση e-mail με python imaplib1Gmail IMAP IDLE δεν λειτουργεί στον διακομιστή Ubuntu0Λήψη όλων των μηνυμάτων από λογαριασμό gmail με python imaplib3Ανάγνωση μηνυμάτων ηλεκτρονικού ταχυδρομείου από λογαριασμό gmail στο python3imaplib Σφάλμα κατά την ανάγνωση Gmail0Python ImapLib λειτουργία αναζήτησης Γιατί δεν λειτουργεί Hot water Qucel ο ένας τον άλλον? Πώς μπορώ να επιστρέψω τους παίκτες σε μια προηγούμενη πόλη που επισκέφτηκαν κατά τη δημιουργία χαρακτήρων; Πρέπει να κάνω τον χαρακτήρα μου να υποψιαστεί μια επερχόμενη ανατροπή ή όχι; Πρέπει να χρησιμοποιώ "a" ή "an" όταν συντομεύω μια λέξη; Πώς πρέπει να επισημαίνεται ο αναποτελεσματικός υπολογισμός ενός μαθητή; Γιατί υπήρχε ένα ρομπότ στο Rocky IV; Τι περιορίζει την ταχύτητα του φωτός στην ειδική σχετικότητα εάν οι πληροφορίες μπορούν να ταξιδέψουν ταχύτερα από το φως μεταξύ των γαλαξιών; Το AWS προσφέρει έναν τρόπο δρομολόγησης της κυκλοφορίας HTTPS σε δύο διαφορετικές παρουσίες EC2 με βάση τη διαδρομή καταλόγου; Μπορείτε να μοιραστείτε μερικά στιγμιότυπα οθόνης των πινάκων ελέγχου του προγράμματος επεξεργασίας; Πώς γίνονται αποδεκτοί οι μηχανισμοί της οργανικής χημείας αν δεν παρατηρηθούν ποτέ πειραματικά (όπως στην εξαρχής μοριακή τροχιακή θεωρία); Τι είδους έγκριση χρειάζεται ο Ντόναλντ Τραμπ για να χτίσει τον τοίχο του; Αν το 60 είναι ίσο με το LX—— Γιατί δεν είναι 11 π.μ. + 1 ώρα == 12:00 μ.μ.;

Εργασία με αρχεία κειμένου

Υπάρχουν μερικοί τρόποι για να εργαστείτε με αρχεία κειμένου στην Python. Ο απλούστερος τρόπος είναι να ανοίξετε το αρχείο σε ένα πρόγραμμα επεξεργασίας κειμένου όπως το Notepad ή το TextEdit και να πληκτρολογήσετε τον κωδικό σας.

Ένας άλλος τρόπος είναι να χρησιμοποιήσετε το αντικείμενο αρχείου στην Python. Μπορείτε να ανοίξετε το αρχείο χρησιμοποιώντας τη συνάρτηση open() και στη συνέχεια να χρησιμοποιήσετε τις συναρτήσεις read() και write() για ανάγνωση και εγγραφή δεδομένων στο αρχείο, αντίστοιχα.

Τέλος, μπορείτε να χρησιμοποιήσετε τη λειτουργική μονάδα os.path για να αποκτήσετε πρόσβαση στη διαδρομή ενός αρχείου κειμένου. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε τη συνάρτηση gettext() για να λάβετε πληροφορίες σχετικά με το αρχείο, όπως το όνομα και το μέγεθός του.

email του Outlook

Το Outlook είναι ένα δημοφιλές πρόγραμμα-πελάτη ηλεκτρονικού ταχυδρομείου που χρησιμοποιείται από εκατομμύρια ανθρώπους σε όλο τον κόσμο. Είναι διαθέσιμο σε πολλές διαφορετικές πλατφόρμες, συμπεριλαμβανομένων των Windows, MacOS και Linux. Το Outlook διαθέτει ένα πλούσιο σύνολο δυνατοτήτων που σας επιτρέπει να διαχειρίζεστε εύκολα το email, το ημερολόγιο και τις επαφές σας. Σε αυτό το σεμινάριο, θα συζητήσουμε τον τρόπο εργασίας με το ηλεκτρονικό ταχυδρομείο του Outlook στην Python.

Αρχικά, θα χρειαστεί να δημιουργήσετε μια παρουσία του αντικειμένου του Outlook. Μπορείτε να το κάνετε αυτό χρησιμοποιώντας την ενσωματωμένη συνάρτηση Outlook():

Outlook = Outlook()

Στη συνέχεια, θα χρειαστεί να δημιουργήσετε μια παρουσία του αντικειμένου Email. Αυτό το αντικείμενο αντιπροσωπεύει ένα μεμονωμένο μήνυμα email στο γραμματοκιβώτιό σας:

email = Email ( 'YourEmail Address' )

Στη συνέχεια, μπορείτε να αποκτήσετε πρόσβαση σε διάφορες ιδιότητες και μεθόδους του αντικειμένου Email:

email.subject() εκτύπωση (email.subject)

'Γειά σου Κόσμε!'

Σχετικές αναρτήσεις:

Αφήστε ένα σχόλιο