Navigation : Top / namazuを使って受け取ったメールをデータベース化

namazuを使って受け取ったメールをデータベース化


手順 

1. mhonarcをインストール 
http://www.oac.uci.edu/indiv/ehood/mhonarc.html 
解凍して、"perl install.me"でインストール 

2. mhonarcの設定 

Ktermなどから以下のコマンド操作でメールをHTML化する。ホームディレクトリに格納 先ディレクトリを作成し、 

$mkdir mail_html 
$mhonarc Mail/各メールごとのディレクトリ名/ -outdir mail_html/ 

outdirオプションをつけて格納するディレクトリを指定する。 さらに日々どんどんやってくるメールを追加するにはaddオプションを付けて実行すれば、順次追加していってくれる。 

$mhonarc Mail/各メールごとのディレクトリ名/ -outdir mail_html/ -add 

その他の数多くのオプションがあるが、mhonart -helpで調べられる。付けたほうがよいオプションを上げると、 

1. -nomodtime HTMLの作成時間をメールの投稿時間と同じにする 
2. -nomailto メールアドレスにmailto:リンクをつけない 
3. -idxsize メール件数  指定したメール数でリスト作成 
* HTMLのドキュメントは/usr/doc/MHonArc/index.html 

格納先のディレクトリには以下のファイル群が作成される。 
mhonarc.db 管理ファイル 
maillist.html 発言日付順のインディクスファイル 
threads.html スレッド順のインディクスファイル 
msg00000.html 1件1件のHTML化されたメール 
bin00000.bin 添付ファイル 

4. Namazu 
VineではPlusに入っている 
-[[mknmz]] デ−タ−ベ−スの作成

mknmzコマンド行引数 

mknmz 2.0.6, Namazu のインデックス作成プログラム 

使い方: mknmz [オプション] <対象>... 

対象ファイル: 
-a, --all すべてのファイルを対象とする 
-t, --media-type=MTYPE 対象ファイルの文書形式を指定する 
-h, --mailnews --media-type='message/rfc822' と同じ 
--mhonarc --media-type='text/html; x-type=mhonarc' と同じ 
-F, --target-list=FILE インデックス対象のファイルのリストを読み込む 
--allow=PATTERN 対象とするファイル名の正規表現を指定する 
--deny=PATTERN 拒絶するファイル名の正規表現を指定する 
--exclude=PATTERN 除外するパス名の正規表現を指定する 
-e, --robots 次の記述を含む HTMLファイルを除外する 

-M, --meta HTMLの metaタグをフィールド指定検索に用いる 
-r, --replace=CODE URIを置換するためのコードを指定する 
--html-split HTMLファイルを 単位で分割処理する 
--mtime=NUM 変更日制限 find(1) の -mtime と同じ規則 
例: -50 で 50 日以内、+50 で 50 日より古いものだけ 

形態素解析: 
-c, --use-chasen 日本語の単語のわかち書きに ChaSen を用いる 
-k, --use-kakasi 日本語の単語のわかち書きに KAKASI を用いる 
-m, --use-chasen-noun 名詞のみを抽出する 
-L, --indexing-lang=LANG インデックス時に言語に特化した処理を行なう 

文字列処理: 
-E, --no-edge-symbol 単語の両端の記号は削除する 
-G, --no-okurigana 送り仮名を削除する 
-H, --no-hiragana 平仮名のみの単語は登録しない 
-K, --no-symbol 記号をすべて削除する 

要約: 
-U, --no-encode-uri URIのencodeを行わない 
-x, --no-heading-summary HTML のヘディングによる要約作成を行わない 


インデックス作成: 
--update=INDEX 更新するインデックスを指定する 
-Y, --no-delete 削除された文書の検出を行わない 
-Z, --no-update 文書の更新・削除を反映しない 

その他: 
-s, --checkpoint チェックポイント機構を作動させる 
-C, --show-config 現在の設定を表示する 
-f, --config=FILE 設定ファイルを指定する 
-I, --include=FILE カスタマイズ用ファイルを読み込む 
-O, --output-dir=DIR インデックスの出力先を指定する 
-T, --template-dir=DIR NMZ.{head,foot,body}.* のディレクトリを指定する 
-q, --quiet インデックス処理の最中にメッセージを表示しない 
-v, --version ヴァージョンを表示する 
-V, --verbose 口やかましいモード 
--debug デバッグモード 
--help このヘルプを表示する 

バグ報告は へどうぞ 

namazuコマンド 
namazuコマンド行引数 
namazu 2.0.6, Namazu の検索プログラム 

使い方: namazu [options] [index]... 
-n, --max=NUM 一度に表示する件数 
-w, --whence=NUM 表示する検索結果の先頭番号 
-l, --list 検索結果を URI・パス名をリストで出力する 
-s, --short 短い書式で出力する 
--result=EXT 結果表示に用いる NMZ.result.EXT を指定する 
--late 検索結果を新しい順にソートする 
--early 検索結果を古い順にソートする 
--sort=METHOD ソート方法を指定する (score, date, field:name) 
--ascending ソートの方向を昇順にする (標準は降順) 
-a, --all 検索結果をすべて表示する 
-c, --count ヒット数のみを表示する 
-h, --html HTMLで出力する 
-r, --no-references 参考ヒット数を表示しない 
-H, --page 先の検索結果へのリンクを表示する (ほぼ無意味) 
-F, --form 
... 
の部分を強制的に表示する 
-R, --no-replace URI の置き換えを行わない 
-U, --no-decode-uri URI encode の復元を行わない 
-o, --output=FILE 指定したファイルに検索結果を出力する 
-f, --config=FILE 設定ファイルを指定する 
-C, --show-config 設定を表示する 
-q, --quiet 検索結果以外のメッセージを表示しない 
-d, --debug デバッグモード 
-v, --version ヴァージョンを表示する 
--help このヘルプを表示する 

5. Shell 

! /bin/tcsh -f 
set dir_home = /home/mori 
# --- Netscape Mailからhtmlへ変換 
/usr/bin/mhonarc $dir_home/mail/Inbox \ 
-outdir $dir_home/html_mail/Inbox -add -nomodtime 
/usr/bin/mhonarc $dir_home/mail/Inbox.sbd/Academic.sbd/JournalTOC \ 
-outdir $dir_home/html_mail/JournalTOC -add -nomodtime 
 ! /bin/tcsh -f 
 set dir_home = /home/mori 
 # --- Netscape Mailからhtmlへ変換 
 /usr/bin/mhonarc $dir_home/mail/Inbox \ 
 -outdir $dir_home/html_mail/Inbox -add -nomodtime 
 /usr/bin/mhonarc $dir_home/mail/Inbox.sbd/Academic.sbd/JournalTOC \ 
 -outdir $dir_home/html_mail/JournalTOC -add -nomodtime 
 
 # --- Namazuインデックスの作成 
 mknmz -h -O $dir_home/namazu/JournalTOC \ 
 $dir_home/html_mail/JournalTOC 
 # --- インデックスの打ち直し 
 gcnmz $dir_home/namazu/JournalTOC 
 
 # crontabで月に一回動かす. 
 # * 0 0 1 * * /home/mori/bin/mkmailindex.sh 

# --- Namazuインデックスの作成 
mknmz -h -O $dir_home/namazu/JournalTOC \ 
$dir_home/html_mail/JournalTOC 
# --- インデックスの打ち直し 
gcnmz $dir_home/namazu/JournalTOC 

# crontabで月に一回動かす. 
# * 0 0 1 * * /home/mori/bin/mkmailindex.sh 

6. 参考サイト 
http://www.ne.jp/asahi/tokyo/shin/hitorigoto/mail.html 
http://www.mm-labo.com/computer/linux/namazu-cgi.html 
http://www.namazu.org/doc/manual.html
-http://www.ne.jp/asahi/tokyo/shin/hitorigoto/mail.html 
-http://www.mm-labo.com/computer/linux/namazu-cgi.html 
-http://www.namazu.org/doc/manual.html