Modul zum Senden von Emails (simplemail.py)

Code-Stücke können hier veröffentlicht werden.
sebste
User
Beiträge: 11
Registriert: Mittwoch 22. Juli 2009, 12:50

Ok - bin mittlerweile ein stück weiter,
hatte den content mal explizit nach utf8 encoded, seither sieht es ganz gut aus. Getested habe ich es noch nicht. Allerdings gehe ich auch davon aus, dass am client irgendwelche komischen codings eingestellt sein könnten.

Komisch ist aber, dass der content immer base64 codiert wird, sobald ich content_charset auf utf-8 umstelle. quoted printable wäre natürlich schöner. ist das normal oder ein bug?
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo sebste!
sebste hat geschrieben:Ok - bin mittlerweile ein stück weiter
Da bin ich froh, denn ich kann mich im Moment nicht darum kümmern.
sebste hat geschrieben:Komisch ist aber, dass der content immer base64 codiert wird, sobald ich content_charset auf utf-8 umstelle. quoted printable wäre natürlich schöner. ist das normal oder ein bug?
Mit base64 kann jeder Email-Client umgehen, deshalb ist das für mich im Moment nicht wichtig. Ich werde mich sowiso in ein paar Monaten nochmal um simplemail kümmern. Ein kleiner Rewrite kann nicht schaden.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Das Modul gefällt mir.

Wie wäre es, es auf http://pypi.python.org/ zu veröffentlichen?
https://www.xing.com/go/invite/18513630.6a91d4
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

lutz.horn hat geschrieben:Wie wäre es, es auf http://pypi.python.org/ zu veröffentlichen?
Hallo lutz.horn!

Das ist auf meiner ToDo-Liste. ;-)

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
snafu
User
Beiträge: 6731
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

gerold hat geschrieben:Ein kleiner Rewrite kann nicht schaden.
Allerdings. ;)

Ich würde Dinge wie Recipients.count() z.B. eher als Property lösen. Die ganze Klasse eignet sich IMHO dazu, von `list` zu erben. Für Attachements würde ich wahrscheinlich überhaupt keine eigene Klasse machen, sondern einfach ne Liste verwenden.
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Gibts doch schon :D

Nur müsste das mal einer weiter machen… Unittests, Docs usw. fehlen nun ja… :D

Gruß, Christopher.
Leon
User
Beiträge: 9
Registriert: Dienstag 10. Juni 2008, 22:06

Hi,

vielen Dank erstmal für simplemail.py!
Ich hätte da noch nen Verbesserungsvorschlag:

Im exim-log file hatte ich die folgende Fehlermeldung (natürlich nur, wenn ich STARTTLS verwende...):
TLS error on connection from (recv): A TLS packet with unexpected length was received.

Dann habe ich Zeile 400 im simplemail.py geändert:
alt: smtp.close()
neu: smtp.quit()
(so stehts in den docs: https://docs.python.org/2/library/smtplib.html)

Und nun funktionierts :-)
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo!

Da ich die alten Beiträge nicht mehr editieren kann: Hier die neuen Links zu Simplemail.
Die Installation mit pip install python-simplemail ist jetzt wieder möglich, da ich den Code jetzt auch zu PyPi hochlade.

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Leon hat geschrieben:Dann habe ich Zeile 400 im simplemail.py geändert:
alt: smtp.close()
neu: smtp.quit()
(so stehts in den docs: https://docs.python.org/2/library/smtplib.html)
Und nun funktionierts :-)
Hallo Leon!

Danke. Ist jetzt in der aktuellen Version.

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo!

Bitte schreibt Bug-Berichte und Wünsche für python-simplemail ins Github. Ich werde alle paar Wochen etwas davon abarbeiten.

--> https://github.com/gerold-penz/python-simplemail/issues <--

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

@gerold: Schön wieder von dir was hier zu hören :D

Hab deine github Projekte ein wenig überflogen... Ein paar Anmerkungen:

Warum packst du Release-Archive von deinen Programmen mit ins git Repo?
Also das hier: https://github.com/gerold-penz/python-s ... aster/dist ?!?

Wenn du git tags verwendest, dann macht das github automatisch, unter "releases"
bsp.: https://github.com/jedie/python-creole/releases

Darüber hinaus finde ich deine "_git*.py" Dateien ein wenig merkwürdig. Wo liegt da der Mehrwert?!?

Zu den "setup.py register/sdist/upload" Skipten -> http://www.python-forum.de/viewtopic.php?f=11&t=36465

Dann wäre noch die Unterverzeichnisse "development", "_internal" unüblich. Warum keine git branches dazu? Wobei "_internal" besser zu tests und docs unbenannt und zu echten tests / Dokumentation gewandelt werden sollte :lol:

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

@gerold
Mich freut's auch, mal wieder von Dir zu lesen...

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
freund
User
Beiträge: 9
Registriert: Sonntag 16. August 2015, 15:11

Hallo,

das Script ist super und sehr hilfreich.

Was ich aber damit nicht hin bekommen habe ist mehrere Anhänge zu versenden.

Ich habe eine Zeile zu stehen:

Code: Alles auswählen

attachment_file = "./image01.jpg"
Wenn ich eine Zweite hinzufüge bekomme ich einen SyntaxError.

Weis wer mehr?

Danke :)
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

So funktioniert Python nunmal nicht… Füg deine Datei einfach zu den Attachments hinzu: https://github.com/gerold-penz/python-s ... __.py#L212 und https://github.com/gerold-penz/python-s ... py#L67-L89
freund
User
Beiträge: 9
Registriert: Sonntag 16. August 2015, 15:11

Jupp Danke.
Da hatte ich auch geschaut.

Verstehe draus aber nicht wie ich mehrere Dateien trennen soll und/oder den Pfad mit angebe, wenn es Dateien von verschiedenen Pfaden sind.
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

Schau dir doch mal die Attachments (siehe das Plural-s am Ende) Klasse und die Methode add_filename von derselbigen an
Holzknoten
User
Beiträge: 4
Registriert: Montag 1. Mai 2017, 08:32

gerold hat geschrieben:Hi!

Neues Feature:
Es wurden neue Klassen fuer CC-Empfaenger (Carbon Copy) und BCC-Empfaenger (Blind Carbon Copy) hinzugefuegt. Ab jetzt können Emails auch an CC und BCC gesendet werden. Wie das funktioniert sieht man in der Funktion ``testen()``

lg
Gerold
:-)
Hi Gerold,

ich konnte kein Beispiel zu CC und BCC finden.
Wo kann ich mit die Funktion "testen()" anschauen?

by Holzknoten
Holzknoten
User
Beiträge: 4
Registriert: Montag 1. Mai 2017, 08:32

Danke BlackJack,

leider gibt es dort keine Beispiele für CC(Kopie) und BCC(Blindkopie) für Emailadressen in einer Email.
BlackJack

@Holzknoten: Doch gibt es.
Antworten