最近のコミュニケーションツールはLINEなどチャットベースのものが主流になってきていますね。
ですが、日本ビジネスメール協会の『ビジネスメール実態調査2020』によると、仕事で使っている主なコミュニケーション手段の第1位は**「メール」(99.1%)**なのだそうです。
メールって面倒…
私の会社は『メール文化』なので、あらゆる情報をメールでやり取りしています。
中でも面倒なのが、
【ソフトウェアのバグのステイタスを毎日夕方にチームメンバーにメールする】
というものです。
定期的に同じような情報を同じようなメンバーにメールするという事務作業はどこの会社でも少なからずあるのではないでしょうか?
このような機械的な業務こそ、最も自動化の効果が大きいのです。
早速、具体的な方法を見ていきます。
##PythonでOutlookメールを送信
先ほどの『ビジネスメール実態調査2020』によると、仕事で使用しているメールソフトは「Outlook」(50.52%)と「Gmail」(38.40%)が二強だそうです。
そこで、本記事ではOutlookでのメール作成の方法をご紹介します。
outlookを操作するためにはwin32com.clientをimportする必要があります。
私はAnacondaを使っていますが、特に追加でインストールしなくてもimportできました。
import win32com.client
次にOutlookのオブジェクトを作成します。
outlook = win32com.client.Dispatch("Outlook.Application")
そして次にメールオブジェクトを作ります。
mail = outlook.CreateItem(0)
CreateItem(n)
のnの部分を変えることにより、Outlookのメールや予定表など様々なアイテムを作ることができます。0にするとメールのオブジェクトを作成できます。
このmailオブジェクトに属性をセットしていくことで、メールを作成していきます。
属性 | 意味 |
---|---|
mail.to | 宛先 |
mail.cc | CC |
mail.bcc | BCC |
mail.subject | 件名 |
mail.bodyFormat | メール書式 1:テキスト 2:HTML 3:リッチテキスト |
mail.body | 本文 |
mail.to = 'hazuki@mahodo.com; aiko@mahodo.com'
mail.cc = 'onpu@mahodo.com'
mail.bcc = 'momoko@mahodo.com'
mail.subject = '1級試験の件'
mail.bodyFormat = 1
mail.body = '''お疲れ様です。どれみです。
なんか今年の試験はコロナの影響でリモート面接になったらしいです。
さっきマジョリカから聞きました。
びっくりしたので取り急ぎご連絡です。
よろしくお願いいたします。
'''
ここまでで作成したメールをいきなり送信する前に確認することをオススメします。
確認するには、mail.display(True)
とします。
mail.display(True)
このようにメールが開きますので、確認してOKなら送信してください。
皆様が面倒なメール送信業務から解放されることを願っています。
最後にコードをまとめて載せておきます。
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application")
mail = outlook.CreateItem(0)
mail.to = 'hazuki@mahodo.com; aiko@mahodo.com'
mail.cc = 'onpu@mahodo.com'
mail.bcc = 'momoko@mahodo.com'
mail.subject = '1級試験の件'
mail.bodyFormat = 1
mail.body = '''お疲れ様です。どれみです。
なんか今年の試験はコロナの影響でリモート面接になったらしいです。
さっきマジョリカから聞きました。
びっくりしたので取り急ぎご連絡です。
よろしくお願いいたします。
'''
mail.display(True)
##Outlookのメールを読み込むには?
今回はOutlookのメール送信の自動化をご紹介しましたが、OutlookのメールをPythonで読み込む方法についてはこちらの記事をご覧ください。
https://qiita.com/konitech913/items/fa0cf66aad27d16258c0