Gmail Loaderを用いた既存電子メールのGmailへの一括インポート

 従来型の電子メールクライアントに決別し、今後はすべてのメール管理をGmail一本槍で済ますことを決意したユーザもかなりの数に上ることだろう。その際に大きな問題となるのが、電子メールクライアントに蓄積された膨大な量の既存メッセージへのアクセス手段を確保しておくことである。根本的な対策の1つは、Mark Lyon氏作成のGmail Loader(GML)の手を借りて、こうした既存メッセージ群を各自のGmailアカウントに一括で移動させてしまうことだ。

 GMLは、Pythonで作成されたスクリプトにGPLライセンスを適用したユーティリティであり、Linux、Mac OS X、Windows用の各プラットフォームで利用できる。Pythonについては、メジャーなLinuxディストリビューションであればデフォルトでインストールされているだろう。ただしPython Megawidgetsについてはデフォルトでインストールされていないこともあり、その場合はユーザが別途入手する必要がある。UbuntuおよびDebianであれば、下記のコマンドを用いてpython-pmwパッケージを入手すればいい。

apt-get install python-pmw

 必要なパッケージのインストールが終了したら、GMLの最新バージョンをダウンロードして、適当なディレクトリに展開しておく。同梱ファイルの構成は、Pythonスクリプト、COPYINGファイル、READMEファイルの3つである。このユーティリティの概要をあらかじめ確認しておきたければ、READMEに目を通しておけばいい。後は下記のコマンドを送信して、GML本体を実行させるだけである。

python gmlw.py

 GMLを使い始めるに当たって設定すべき項目はそれ程多くない。まずSMTPサーバについては、デフォルトでGoogleのSMTPサーバの1つが設定されている。デフォルト設定のままでGMLを起動してSMTPサーバを認識できなかったら、Gmailサーバの一覧が掲載されたページを参考にして、適切なものと置き換えればいい。私の場合もGmailへのメッセージのアップロードに最初は失敗したが、この設定をgsmtp57.google.comからgsmtp163.google.comに変えたところ正常に処理させることができた。

Gmail Loader interface
Gmail Loaderのインタフェース画面(クリックで拡大)

 またポート25がブロックされたISPを利用している場合は、他のSMTPサーバを介してメッセージを転送させることもできる。そのための設定としては、SMTPサーバ設定をGoogleのものから各自のISPのものに置き換え、その他の必要なユーザ認証用の情報を指定しておけばいい。

 次に行うべき設定はアップロードさせるメールボックスの指定だが、この操作についてはFindボタンをクリックすることで、メールボックス用のファイルないしディレクトリを直接指定できるようになっている。なおこの設定に関しては、メールボックスおよびメッセージの種類も選択しておく必要があり、またアップロード先となるGmailのアカウントも入力しておかなければならない。こうしたメールボックス関連の情報は電子メールクライアントごとに異なるものだが、有り難いことに各ユーザが何を選ぶべきかについては、GMLのインタフェースを見るだけで大方把握できるようになっている。

 これらの設定が完了すれば、後はSend to Gmailボタンをクリックするだけであり、手元のメッセージ群がサーバ側にコピーされ終わるまで気長に待てばいい。特にこのユーティリティの場合、個々のメッセージ間に2秒間のタイムアウトが設けられる仕様になっているため、多量のメールを転送しようとするとコピー終了まで結構な時間待たされることになる。その様な場合は、さっさと作業を切り上げ、一晩ぐっすり眠ってから翌朝にでも作業の成果を確認することをお勧めしたい。

 今回GMLを試用するにあたり、約1,300件のメッセージの入ったmbox形式のメールボックスをGmailアカウントにアップロードさせてみた。作業完了までに要したのは数時間という長さである。ここでアップロードされたメールに関して、特に問題の発生は確認できなかった。メッセージ間のスレッドに関する情報もGmail側は正しく認識しており、送受信日に関する情報もそのまま維持されているようである。ただし何件かのメッセージについては、インポート時にGmailによってスパムだと誤判断されていたが、そうしたメッセージを正しい状態に戻すのはそれほど手間のかかる作業ではない。

 現行のGMLで扱えるメールボックスの形式としては、mbox、maildir、MHなどがサポートされている。このうちmboxのインポートに関しては、normalモードかless strictモードかの選択が行える。後者は、mboxのフォーマット規約を厳守していないクライアントによる保存メールを扱うために用意されたオプションとのことだが、マニュアルにはどのクライアントが該当するかは明示されておらず、実際私が試した限りにおいて、通常のmbox用オプションのままで問題なく処理されている。この設定については、normalモードによるmboxのインポートに問題が発生したらless strictモードを試してみる、ということでいいだろう。

 GMLの制作者であるLyon氏は、その他にもGmail関連の各種ユーティリティを公開している。ただしこれらの中には、やや時代遅れになった感のあるものや、Windowsベースのユーティリティも含まれているので、その辺の事情は留意しておこう。例えばGML自体も最新版のリリースから少々時間が経っているが、動作そのものに問題はないはずである。またバージョン0.5のリリースは2004年だとREADMEに記されているが、GMLのサイトにある説明によるとバージョン0.6の開発が進行中とのことだ。

 GUI形式のユーティリティがお気に召さないという向きには、コマンドライン制御のみが可能なGMLの0.4リリースが現在でも入手できる。またGMLからのアップロード中にSMTP接続がリセットされた場合に電子メールを再送信させるようにできるGmail Loader Enhancedというユーティリティも用意されているので、興味があればチェックしてみよう。

 GMLは簡易的なユーティリティであり、日常的に使用するというタイプのものでもないが、手元に蓄積した既存の電子メール群を一括してGmailメッセージ化したいという場合において、その真価を発揮するツールなのである。

NewsForge.com 原文