Anslut till IMAP Server C#

I olika fall nås e-postservrarna från Python-applikationerna för att läsa e-postmeddelanden eller för att implementera e-postklienter. För att hämta e-postmeddelanden från en e-postserver används vanligtvis protokollet Internet Message Access Protocol(IMAP). I den här artikeln kommer vi att visa dig hur du läser e-postmeddelanden via IMAP i Python. Artikeln kommer uttryckligen att täcka hur man ansluter till en e-postserver, kommer åt önskad mapp och läser e-postmeddelanden.

Python-bibliotek för att läsa e-postmeddelanden via IMAP - Gratis nedladdning

För att läsa e-postmeddelanden från e-postservern via IMAP kommer vi att använda Aspose.Email for Python via .NET. Det är ett kraftfullt e-postbibliotek som låter dig skicka e-post och komma åt postlådor från e-postservrar. Du kan installera biblioteket från PyPI med följande kommando.

pip install Aspose.Email-for-Python-via-NET

För manuell installation med en .whl-fil kan du följa stegen nedan.

  • Ladda ner den installerbara .whl-filen från avsnittet downloads.
  • Från kommandoraden, använd kommandot: pip install «FileName> >.whl för att installera biblioteket.

Anslut till e-postserver via IMAP i Python

Följande är stegen för att ansluta till en e-postserver med IMAP.

  1. Skapa en instans av klassen ImapClient och initiera den med värdnamn, port, användarnamn och lösenord.
  2. Använd ImapClient-objektet för att komma åt brevlådan.

Följande kodexempel visar hur du ansluter till en e-postserver med IMAP i Python.

from aspose.email import SecurityOptions, ImapClient

# skapa en instans av ImapClient och ange värd, port, användarnamn och lösenord
client = ImapClient("imap.domain.com", 993, "user@domain.com", "password")

# ställ in säkerhetsalternativ
client.security_options = SecurityOptions.SSLIMPLICIT

# använd ImapClient-objektet för att komma åt postlådan

Python: Få åtkomst till e-postmappar i Mailbox

När du har upprättat anslutningen till e-postservern kan du välja vilken mapp du vill läsa e-postmeddelandena från. Låt oss först kolla hur du får listan över alla mappar i brevlådan. Följande är stegen för att få information om varje mapp.

  1. Skapa en instans av klassen ImapClient och initiera den med värdnamn, port, användarnamn och lösenord.
  2. Använd metoden ImapClient.listfolders() för att hämta mappsamling i ett objekt.
  3. Gå igenom samlingen och hämta mappars detaljer.

Följande kodexempel visar hur man skriver ut information om mapparna i en brevlåda.

from aspose.email import ImapClient

# skapa en instans av ImapClient och ange värd, port, användarnamn och lösenord
with ImapClient("imap.gmail.com", 993, "username", "password") as client:

    # få lista över mappar
    folderInfoColl = client.list_folders()

    # gå igenom samlingen för att få information om mappar en efter en
   for folderInfo in folderInfoColl:
        print("Folder name is " + folderInfo.name)
        folderExtInfo = client.get_folder_info(folderInfo.name)
        print("New message count: " + str(folderExtInfo.new_message_count))
        print("Is it readonly? " + str(folderExtInfo.read_only))
        print("Total number of messages " + str(folderExtInfo.total_message_count))
    

Låt oss nu gå vidare för att komma åt en viss mapp i brevlådan med IMAP.

  1. Skapa en instans av klassen ImapClient och initiera den med värdnamn, port, användarnamn och lösenord.
  2. Använd metoden ImapClient.selectfolder(string) för att välja mappen.

Följande kodexempel visar hur man väljer en e-postmapp från brevlådan.

from aspose.email import ImapClient

# skapa en instans av ImapClient och ange värd, port, användarnamn och lösenord
with ImapClient("imap.gmail.com", 993, "username", "password") as client:

    # välj mappen från brevlådan
    client.select_folder("Inbox")

Läs e-postmeddelanden från en mapp i Python

Följande är stegen för att läsa e-postmeddelanden från en viss mapp i brevlådan med Python.

  1. Skapa en instans av klassen ImapClient och initiera den med värdnamn, port, användarnamn och lösenord.
  2. Använd metoden ImapClient.selectfolder(string) för att välja mappen.
  3. Hämta lista över meddelanden i mappen med metoden client.listmessages().
  4. Gå igenom samlingen av meddelanden.
  5. Få information om varje e-postmeddelande och spara det på disken om det behövs.

Följande kodexempel visar hur man läser e-postmeddelanden från en e-postserver i Python.

from aspose.email import ImapClient

# skapa en instans av ImapClient och ange värd, port, användarnamn och lösenord
with ImapClient("imap.gmail.com", 993, "username", "password") as client:

        # Välj mapp
        client.select_folder("Inbox")

        # läsa varje meddelande i samlingen
       for msg in client.list_messages():
            print( "From: '{}', MIME Id: {}".format(msg.from_address, msg.message_id) )
            
            # spara meddelande på disk
            client.save_message(msg.unique_id, msg.unique_id + "_out.eml")

Python Library för att läsa e-postmeddelanden via IMAP - Skaffa en gratis licens

Du kan läsa e-postmeddelanden via IMAP med Aspose.Email för Python gratis genom att skaffa en tillfällig licens.

Slutsats

I den här artikeln har du lärt dig hur du läser e-postmeddelanden från en e-postserver med IMAP i Python. Kodproverna har visat hur man ansluter till en e-postserver, får listan över mappar i brevlådan, väljer en mapp och läser e-postmeddelanden. Dessutom kan du besöka dokumentation för att utforska mer om Aspose.Email för Python via .NET. Du kan också ladda ner det kompletta paketet med källkodsexempel från GitHub. Om du skulle ha några frågor eller funderingar är du välkommen att meddela oss via vårt forum.

Se även