Miten aloittaa FOSS for Python

Miten aloittaa FOSS for Python

aspose-email-foss Python on MIT:n lisensoima vapaasti luotava, lukeminen ja muuntaa Outlook MSG tiedostoja ja CFB-säiliöitä – ei Microsoft Officea tarvitaan, ei alkuperäistä Python on python-laajennusta PyPien kautta.

Vaiheittainen opas

Vaihe 1: Asenna paketti

PyPin asentaminen pip:n avulla:

pip install aspose-email-foss

Tarkista, että asennus on ladattu oikein:

from aspose.email_foss.msg import MapiMessage
print("aspose-email-foss is ready.")

Vaihe 2: Vaaditut luokat tuodaan

Tuoda viestien luomiseen, ominaisuuksien määrittämiseen ja muotoilun muuntamiseen tarvittavat moduulit:

from datetime import datetime, timezone
from aspose.email_foss import msg
from aspose.email_foss.msg import MapiMessage, PropertyId

Vaihe 3: Luo tiedosto

Käytä MapiMessage.create() - Rakentaa viesti aiheella ja keholla. Aseta lähettäjän metatiedot kanssa PropertyId Lisätään vastaanottajia ja liitetään tiedosto.

message = MapiMessage.create("Getting Started", "Hello from aspose-email-foss!")

message.set_property(PropertyId.SENDER_NAME, "Build Agent")
message.set_property(PropertyId.SENDER_EMAIL_ADDRESS, "agent@example.com")
message.set_property(
    PropertyId.MESSAGE_DELIVERY_TIME,
    datetime(2026, 1, 1, 9, 0, tzinfo=timezone.utc),
)

message.add_recipient("alice@example.com", display_name="Alice Example")
message.add_attachment("notes.txt", b"Meeting notes go here.\n", mime_type="text/plain")

message.save("getting-started.msg")
print("getting-started.msg written.")

Vaihe 4: Lue tiedosto takaisin

Lataa tallennettu tiedosto käyttäen MapiMessage.from_file() Käyttäjänä toimiva asiakassovellus.Lisää subject ja body palautettuja kohteita suoraan palautetusta kohteesta.

with MapiMessage.from_file("getting-started.msg") as message:
    print(f"Subject: {message.subject}")
    print(f"Body   : {message.body}")

Vaihe 5: Muunna MSG tilalle EML

to_email_bytes() muuntaa ladatun viestin muotoon RFC 5322. Kirjoita tulos a) A .eml Tiedostoja on käytetty standardikirjastoon.

from pathlib import Path

with MapiMessage.from_file("getting-started.msg") as message:
    Path("getting-started.eml").write_bytes(message.to_email_bytes())
    print("getting-started.eml written.")

Yleisiä ongelmia ja korjauksia

ModuleNotFoundError: No module named 'aspose' Paketti ei ole asennettu aktiiviseen Python-ympäristöön. pip install aspose-email-foss samassa virtuaalisessa ympäristössä, jota käytät käsikirjoituksen suorittamiseen. vahvistaa pip show aspose-email-foss.

FileNotFoundError Kun soitat MapiMessage.from_file() Kuljettu polku ei ole olemassa tai käyttää väärää erottelulaitetta käyttöjärjestelmällesi. pathlib.Path Pysäytä portaali portaalin avulla: MapiMessage.from_file(Path("folder") / "file.msg").

MSG-tiedosto avautuu Outlookissa, mutta ei näytä aiheen sisältöä MapiMessage.create() hyväksyy aiheen ensimmäiseksi asennon argumenttina. Jos olet läpäissyt Outlook näyttää viestin otsikottomana. Lähetä ei-tyhjä string tai aseta se selkeästi mukana set_property(PropertyId.SUBJECT, "My Subject").

EML muuntaminen tuottaa tyhjän kehon to_email_bytes() Käytä body_html Jos se on asetettu ja putoaa takaisin body.Vahvistaa, että at vähintään yksi näistä ominaisuuksista ei ole tyhjä MSG -laitteen lataamisen jälkeen from_file().

Unicode-sisältö vastaanottajissa tai aiheessa on lyhennetty Passin kautta unicode_strings=True 2 Tyyppi MapiMessage.create() Varmista, että kiinteistöjen ominaisuudet ovat tallennettu Unicode (PT_UNICODE) eikä ANSI (RT_STRING8).

Usein kysytyt kysymykset

Tarvitseeko Microsoft Office -ohjelmistoa?

Kirjasto on täysin itsenäinen.Se lukee ja kirjoittaa binääri- MSG ja CFB-muodot Pythonissa ilman mitään riippuvuutta Microsoft Office, COM automaatio tai Win32 API: n kanssa.

Voinko käyttää tätä kirjastoa Linuxissa tai macOS: ssä?

Kyllä kyllä. aspose-email-foss Python on puhdas ja toimii millä tahansa alustalla, joka tukee Pythonia 3.10:ää. tai uudempi – mukaan lukien Windows, macOS, Linux, Docker-säiliöt ja palvelinpalvelimet.

Onko kirjasto vapaa kaupalliseen käyttöön?

Kyllä. Se on julkaistu MIT-lisenssin alaisuudessa. Voit käyttää, muokata ja levittää sitä mihin tahansa tarkoitukseen, mukaan lukien kaupalliset sovellukset, ilman lisenssikirjojen ulkopuolella olevia rojalteja tai määritysvaatimuksia.

Miten lisään CC- ja BCC-vastaanottimia?

Passin kautta recipient_type=msg.RECIPIENT_TYPE_CC tai msg.RECIPIENT_TYPE_BCC Kolmanneksi niin kuin Argumentti on add_recipient():

message.add_recipient("bob@example.com", display_name="Bob", recipient_type=msg.RECIPIENT_TYPE_CC)

Miten voin laittaa yhden sisälle toiseen?

Käytä MapiMessage.add_embedded_message_attachment(),Sisäisen kulkeminen MapiMessage Ensimmäinen argumentti on:

inner = MapiMessage.create("Inner message", "Embedded body.")
outer = MapiMessage.create("Outer message", "See attachment.")
outer.add_embedded_message_attachment(inner, "inner.msg")
outer.save("outer.msg")

Katso myös

 Suomi