初めまして。 WinXP に Sylpheed(Sylpheed-2.4.8-win32_setup.exe)をインストールし、bsfilter(bsfilter-1.0.16.tgz) を展開したものから bsfilter.exe, bsfilterw.exe を Sylpheed 本体と同じディレクトリに移動しました。 (XP 本体は、Documents and Settings フォルダの名前を変更してDドライブへ移動しています) 迷惑メールについて、なかなか学習効果が上がらない気がしています。 (同じような文面のメールの一部を「迷惑メール」と指示した後は、 チャンと振り分けてくれるので、動作はしているようです。 ですが、次回の起動時は忘れてしまっているようで...) どんな感じでデータベース化されているのかと思い、 bsfilter --export-spam expdb としてみましたが、ファイルには何も出力されません。 bsfilter --show-db-status では db C 1 0 1 0 1 db ja 1 0 1 0 1 でした。 注目しているディレクトリが違うのだろうと思い、設定ファイルを探してみました(ファイル名に bsfilter を含むで検索)が、それらしきものは見つかりません。 そこで質問です。 Sylpheed が bsfilter を呼ぶときは、どんな設定で(またはどの設定ファイルで)呼んでいるのでしょうか。 bsfilter の学習結果を見るには、どうしたらいいのでしょうか。 どうぞよろしくお願い致します。 (追) bsfilter.exe, bsfilterw.exe を Sylpheed 本体と同じディレクトリに移動するだけで使えるようになるという事なので、あちらこちらのWebページにあるようなデータベースディレクトリを作る作業はしていません。 Sylpheed 上から「迷惑」「迷惑ではない」の指示をする以外の学習はさせていません。 これらの作業が必要なのでしょうか。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
ご回答ありがとうございます。 bsfilterw.exe には存在せず、ユーザーディレクトリの Application Data\Sylpheed\Mailboxes\Mail 以下のフォルダ inbox, Spam, trash, ... 以下にそれぞれ存在します。 ご回答の内容とは違いますが、これは異常ですか? ツール -> ログウィンドウ で開いたプロトコルログには、 「受信」ボタンをクリックすると、接続関係のメッセージと POP3> RETR 92 POP3< +OK 888 octets POP3> DELE 92 POP3< +OK Message 92 has been deleted. の読込みと削除のメッセージが表示されますが、 ツールバーの「迷惑メール」ボタンをクリックしても何も反応ありません。 正常なら、bsfilter 関係のメッセージも表示されるのでしょうか? |
ご回答ありがとうございます。 Gmail を経由する事で、迷惑メールの仕分け効率が上がるというご提案でしょうか? 今回の質問は、Sylpheed で bsfilter を使う上で、作業や設定の手順、確認方法の把握という方向での回答を希望します。 もう既に届いているメールを再度Gmailに投げて再受信(あるいはWebMailとして閲覧)というのは、ネットのトラフィックを増やすばかりのように思うのです。 まぁ、一人がこれをする事による影響は極僅かだとは思いますが、個人的にはローカルで済む事はローカルで処理すべきと考えます。 今後、メールアドレスを記す場合は全てGmailにするという事は効果ありかも知れませんね。 |
--homedir オプションを指定しないといろいろなところにDBファイルが作られてしまうようでした。 設定> 全般の設定> 迷惑メール ・迷惑メール bsfilterw --homedir {bsfilterのDB格納先} -su ・非迷惑メール bsfilterw --homedir {bsfilterのDB格納先} -cu ・判定 bsfilterw --homedir {bsfilterのDB格納先} # 判定の部分にも必要かどうかわかりませんがとりあえず付けてます。 |
ご回答ありがとうございます。 bsfilter のサイトには下記のようにありますが、うまく機能しないのですね。 bsfilter 側がディレクトリを間違えているのか、 Sylpheed 側がディレクトリを間違えさせているのか が不明ですが。 最初の質問に戻りますが、Sylpheed が bsfilter を呼び出す際は、 設定->全般の設定->迷惑メール の学習コマンドのそれぞれの欄にあるコマンドを実行するだけなのでしょうか? 特に設定ファイルを指定したり、何かのオプションを加えたりはしないのでしょうか? 以下、http://bsfilter.org/ より引用 --homedir directory データベース、ロックファイルを作るホームディレクトリを指定する。 --homedirオプションが使用されなかった場合は、 BSFILTERHOME環境変数で設定されたディレクトリを使用する。 BSFILTERHOME環境変数が設定されていない場合は、~/.bsfilterを使用する。 HOME環境変数が設定されていない場合は、bsfilterのあるディレクトリを使用する。 |
基本的には以下のように指定したコマンドの最後にファイル名を追加して実行するだけです。 bsfilterw -su "C:\...\12345" 実行に成功した場合はログは出ませんが、失敗すると以下のようにエラーが出力されます。 ** LibSylph-WARNING: Can't execute command: bsfilterw その説明にもあるように、環境変数 HOME などが指定されているとそちらにファイルが保存されますので、確認してみてください。 |
ありがとうございます。 「基本的には」が多少引っかかりますが(そうでない場合もあるような感じで...)特に何もしていないと理解しました。 ただ、オフィシャルページ(?)の説明にあるとおりの動作だとすると、環境変数(BSFILTERHOME, HOME)の指定も無いので bsfilter のあるディレクトリ(=Sylpheed 本体のあるディレクトリ)にファイルが作られるはずですが、メールが保存されるディレクトリそれぞれに作られているのは何でかな...という感じですが。 Sylpheed 処理中にカレントディレクトリがそれぞれのフォルダに 移っていて bsfilter は bsfilter のある場所ではなく、 単にカレントディレクトリに書き込んでいるって事なのかなぁと 予想してます。 常に bsfilter が動いている訳ではない(週一程度しか Sylpheed は利用しない)ので、環境変数 BSFILTERHOME を設定する(ましてや HOME という名前で bsfilter 関連のディレクトリを指示する)のは何となく嫌だったので、現状、流れ星さんご指摘の --homedir を指示する事で対応しております。 ディレクトリ名を記述するのが長ったらしくて見難いです。 メールディレクトリを示すキーワードが使えるといいなと思いました。 bsfilter.conf を置いておくのがスマートな気がしたのですが、上の予想通りだと全てのメールフォルダに同じ事を書いたのを置く必要がありそうでやってません。 まぁ、どんな内容で書けばいいのかよく分からない(Win版もLinuxと同じ書式でいいのかも不明)ので、テストを諦めたというのが正直なところですが。 サンプルの bsfilter.conf や書式などの情報は Linux版をダウンロードすると得られるのでしょうか? これは bsfilter の方で尋ねてみます。(ご存知なら教えてください) |
私もbsfilterが正しく動作しないので困っていたのですが、鉄さんの投稿を見て確認した所、inboxやtrashフォルダ内にbsfilterのデータベースファイルが作成されていました。 私は今までbsfilterは正常に使えていた(bsfilterw.exeと同じディレクトリにデータベースファイルが作成されていた)のですが、bsfilterのバージョンを1.0.16に上げたのを契機におかしくなったので、bsfilter側の挙動が変わったのではないかと思います。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |
bsfilterが正常に動作している場合、 bsfilterw.exe と同じディレクトリに C.clean.sdbm.dir C.clean.sdbm.lock C.clean.sdbm.pag ... ja.spam.sdbm.dir ja.spam.sdbm.lock ja.spam.sdbm.pag のようなデータベースファイルが作成されます。 Sylpheedのツール->プロトコルログなどで、bsfilterが正常に実行されているか どうかも確認してみてください。 |