【winmail.datの開き方】Pythonなら添付ファイルを変換不要で簡単に取り出せる!もう開けないとは言わせない!【tnefparseライブラリ】

winmail.dat。このファイル形式に困惑したことはないだろうか? きっとこのページに辿り着いたあなたは、Pythonユーザーなのだろう。私たちPythonユーザーはもうwinmail.datに悩まされることはない。

winmail.datとは?

winmail.datは、Microsoft社のOutlookというメールソフトでメール送信した場合に添付されることがある、Microsoft社独自のTNEFというファイル形式だ。メールの受け手がOutlookを使用していない場合、このwinmail.datという添付ファイルが送られてくることがある。その際、メール本文は問題なく読めるが、添付ファイルがある場合に添付ファイルがwinmail.dat内に閉じ込められてしまう。そのため、メールの再送を依頼した人は多いのではないだろうか?

Pythonならwinmail.dat内の添付ファイルを抽出できる

本記事執筆者による話題の新刊!発売即重版!

Pythonにはwinmail.dat内の添付ファイルを抽出できるライブラリがある。それが、「tnefparse」だ。まずはtnefparseをインストールしよう。通常通り以下コマンドで実行できる。

pip install tnefparse

 

tnefparseライブラリによる、winmail.dat内添付ファイル取り出しの実践

最も簡単な方法は、コマンドプロンプト(筆者の環境ではAnacondaPrompt)で下記を実行する。前提として、カレントディレクトリに「winmail.dat」というファイルが置かれているとする。
なんと、コードはたった1行だ。

tnefparse -a winmail.dat

 
成功すると、「Successfully wrote 2 files」などのように表示され、カレントディレクトリにファイルが出力されているはずだ。winmail.datが添付ファイルとして送られてきても、実際には添付ファイルがないケースも多く、その場合は「Successfully wrote 0 files」と表示される。「-a」のaはAttachment(添付)の頭文字でありaをoにするとOverview(概要)が表示されるので興味のある人は試してほしい。他にどのような引数があるかはドキュメントを確認してほしい。

以上、Pythonでwinmail.dat問題を解決する方法を提示した。この記事が少しでもあなたの役に立つことを願っている。

スポンサードリンク
おすすめの記事