<p>My client wants to send email announcements and reports for customers. Now. The python-side code doesn't seem too hard but there's the rest of the story.</p>

<p>What do I require in order to send such emails that won't end up getting blocked by email servers and clients?</p>

There's no sure fire way, as email filters can do as they wish, but a few recommendations:
Use a real SMTP server, usually your client's (Authenticating if needs be). By real I mean one that's in real usage not a special one to send your emails only.
Send from a real account able to receive responses.
Avoid HTML if possible, if not possible, send a
multipart message
.
Send all mandatory headers plus some headers usually sent by common MUAs.
Generally, check the common spam
detection rules
to get a feel what's common in spam mails.