Mail.appで英語のメールをゴミ箱に移動するルール設定について

Mac OS X 10.4.11のiMac(2.4 GHz Intel Core Duo)で使用している

Mail.app 2.1.3についてなのですが、


最近迷惑メールが増え、Mail.appのルール設定で日本語の迷惑メールについては、ほぼゴミ箱に移動できているのですが、はるかに件数の多い英語のメールについてはルール設定で追いつかない状況です。


メッセージの内容が英語(欧文)のみのメールを一括して処理する「ルール設定」か他の方法がありますでしょうか?

いろいろ検索はしてみたのですが、該当する方法にたどり着けずスレッドを立てさせて頂きました。お知恵をお貸し下さい。


※以前からホームページで公開したりいろいろなサービスに登録したアドレスを複数管理していることが原因なのですが、そのアドレスたち(10個以上あります)を変更するのも、手続きや告知しなければいけない数を考えると回避したい仕事量で…

よろしくお願いいたします。

投稿日 2009/11/04 01:30

返信
返信: 14

2009/11/05 07:02 こういち への返信

こういちさん、こんにちは

アドバイスありがとうございます。


早速ダウンロードし、

インストール→バケツの作成まで進めたところです。

あとはアカウント情報の変更と振り分けルールの設定です

やはりルールの設定が「キモ」なんでしょうね

解説ページを読んで理解に努めています

「英語のみのメール」を定義する具体的な記述がまだわかっていません

もしかしたら、受信した履歴画面で指定していくのでしょうか……?


日本では、英語だけのメールを振り分けるって、けっこうニーズもありそうですし、

もっと簡単にできても良さそうに思うのですが、難しいですね。

やはりアメリカで作られたプログラムがベースになっているからでしょうか?

頑張ってみます。

2009/11/05 09:23 hasegawa への返信

うーん、エレガンスのかけらもないけど、例えば、本文中に、「。」がない。「、」がない。いや、完璧にやるなら、「あ」がない「い」がない(以下続く)、というAND条件のルールを作れば、 まぁ 98% くらいの精度でいけるのでは。ただ、"I love you!" とか、「我愛你」とかのメールが来たら見逃しちゃいますけどね(笑)。

2009/11/05 14:57 hasegawa への返信

hasegawa による書き込み:



「英語のみのメール」を定義する具体的な記述がまだわかっていません

もしかしたら、受信した履歴画面で指定していくのでしょうか……?


そのとおりです。

例えば、「日本」「外国」「外国trash」という3つのバケツを用意して、間違えるたび(最初はすべてunclassified)にPOPFileの画面で教えてやると、だんだんまちがえなくなります。

間違えたメールのヘッダを全て表示させると、「X-POPFile-Link: 」というヘッダがありますのでそのリンクをクリックすると便利です。


しばらくはMail.appでのルールは設定しないで様子を見て、「もう大丈夫」だと思ったらSubjectの頭につく文字でルール設定をすれば簡単にゴミ箱行きが実現できます。

2009/11/05 16:20 hasegawa への返信

こちらでは英語の迷惑メールもかなりの精度で勝手に処分してくれてます。

特別な設定にはしていませんが、効いていることがあるとしたら、

「インターネット・サービス・プロバイダが設定した迷惑メールヘッダを信頼」にチェックを入れていることくらいでしょうか。

このヘッダを入れるかどうかは使っているプロバイダに依存しますけど。


ところで、自分のところにきている英語の迷惑メールの多くは


Content-Type: text/plain; charset="Windows-1251"

Content-Type: text/plain; charset="ISO-8859-1"


となってます。

少なくとも、これらのcharset(使用している文字コードのセット)では日本語は表示できませんから、日本語でないことだけは確かです。

Content-Typeヘッダにこれらのcharsetが入っているかどうかのチェックをしてみるのはどうでしょうか?

なお、charsetを指定してこないケースもそれなりにありますので、あくまでも限定的なフィルタです。

2009/11/08 23:48 hasegawa への返信

週末出かけていてRESが遅くなってすいません


Hit-Cさん ありがとうございます。

サーバーでチェックされたものの信頼性が、今のところほぼ信頼できない状態になってしまい、[SPAM]が付加されたタイトルだらけなんです(^^;)こちらも再度見直してみます。

そしてContent-Typeをいくつか見てみました。

英語のメールのヘッダを見てみますと確かに"Windows-1251""ISO-8859-1"

が多いのですが、multipartと記されているものではcharsetが見あたらない場合がありました。

また「Content-Type」自体が表示されないものもあり、おっしゃるように限定的な使用になりそうです

逆に日本語を特定できないかと、30ほどの日本語のメールを見てみましたが

「ISO-2022-JP」が多いものの、やはり「multipart」となっているものにはそくちすといかが見あたらず、「Content-Type」での特定は難しそうですね


takano様 ありがとうございます。

条件設定の一番上で「いずれか」「すべての」と選択ができますね

基本的なことなのに、ここに気がつきませんでした。m(_ _)m

**の彼女が出来る予定もないんで、即効性のある対処としては、これが一番シンプルで良いかも…と思っています。


こういち様 ありがとうございます。

アカウント設定でメールサーバーの名称再設定が必要なようで、こりゃじっくりしなきゃ!と、週末は作業を控えました。

長い目で見るとこういった対処が必要になることは明らかなので設定を進めていきたいと思います。


まずはお礼まで…ほんとうにありがとうございます。

POPFileの使用報告は随時ここに報告させて頂きます。

2009/11/09 00:04 hasegawa への返信

hasegawa による書き込み:




英語のメールのヘッダを見てみますと確かに"Windows-1251""ISO-8859-1"

が多いのですが、multipartと記されているものではcharsetが見あたらない場合がありました。

また「Content-Type」自体が表示されないものもあり、おっしゃるように限定的な使用になりそうです

逆に日本語を特定できないかと、30ほどの日本語のメールを見てみましたが

「ISO-2022-JP」が多いものの、やはり「multipart」となっているものにはそくちすといかが見あたらず、「Content-Type」での特定は難しそうですね


takano様 ありがとうございます。

条件設定の一番上で「いずれか」「すべての」と選択ができますね



別に1つのルールで全部に対処する必要はないので、個別にゴミ箱行きのメールを指定すれば良いのではないでしょうか。

例えば、差出人のアドレスとかタイトルにある用語、本文中の定型句とかで、個別対応のルールを作る。

2009/11/09 02:40 hasegawa への返信

xyさん、ありがとうございます。

そもそもは英語だけのメールはすべてゴミ箱へ移動する【簡単な方法】を私が知らないだけなんじゃないか?と疑問がふくれあがって、ここに質問させて頂きました。

メールを使い続けた年月の分だけ、アドレスがいろいろなところに漏れているらしく…

(まぁ以前はホームページにそのままメールアドレスを乗っけたり。とガードも緩かったんで、自分のせいなんですが)現在、22のルールを設定し、SPAMと登録したアドレスは約300。それでも、それはそれは雑多なSPAMが毎日やってきます。

メールアドレスごとに2〜3台のパソコンで共有しているものもあり、アドレスで個別に設定する作業等はけっこうな手間となるものですから…何故か自分から発信されているという偽装メールもありで(^^)こんなのどうやって対処しよ?と、SPAM排除への一つ目のステップが「英文だけのメールはゴミ箱へ」なんです。


次のステップとして、日本語のメールに、教えて頂いているやり方や今まで設定してきたルールを適用したりして、できるだけ選別の効率を上げたいと考えている次第です。



あと、すいません。一つ前の投稿で変換がおかしかったです。

ひらがな入力バレバレです(^^)

11行目あたり


> 「ISO-2022-JP」が多いものの、やはり「multipart」となっているものにはそくちす> といかが見あたらず…


ISO-2022-JP」が多いものの、やはり「multipart」となっているものにはcharset

が見あたらず、「Content-Type」での特定は難しそうですね……でした。

2009/11/09 03:24 hasegawa への返信

駄アイディアですが


メールアドレスが5個までならGmailのMail Fetche機能でメール アカウントからメールをダウンロードして、すべてのメールを Gmail で管理することができます。

http://mail.google.com/support/bin/answer.py?hl=ja&ctx=mail&answer=21288

これだと英文スパムはほぼ迷惑メールフォルダに入れてくれます。

あと5個はGmailとほぼ同じ機能のlivedoorメールを使って同じ機能でできます。

それをapple mailにIMAP接続するという方法も有ると思います。

10個のメールアドレスならこれでできると思います。



#でも今度は日本語のメールが迷惑メールに入ることが有ります…#

10以上のアドレスがある場合は、いったん全部のメールをGmailへ転送するとそこで英文の迷惑メールを振り分けてくれるかも知れないですがやったこと無いです。


その後apple mailにIMAP接続。


ご参考まで。

2009/11/09 05:06 xy への返信

xy wrote:


hasegawa による書き込み:



SPAMと登録したアドレスは約300。


発信者で判別しても駄目ですよ。

ほとんど偽装ですから。


そうそう。それは一番効率が悪い。もしそれでもやりたいのだったら、アドレスブックのグループにブラックリストとか名前を付けて登録して、このグループに属するものはダメ、とかすると多少効率はよくなりますが、それでも余程同じアドレスから送ってくる奴の場合や、厳密な意味での無差別スパムではないけど、このショップからのメール見たくないとかの場合でないと、意味ありません。


ここから先は技術の話じゃなくて趣味の世界です(笑)が、僕は、ルールたくさん作ってます。というか、ルール作るの好きです。本文に入っているとスパムと見なす表現(ドラッグ、偽造商品、違法ソフト、、など分野別)タイトルに入ってるとスパムと見なす単語(同、分野別)、その他に、本文にロシア語が入ってるとスパムとか、80くらいルール作ってあって、それぞれのルールにヒットすると、分野別に色が付いて、違う声で喋ってお知らせしてくれるようになってます。「お、久しぶりにあれ入ったな」とか、「最近、あの声聞かないな」とか、楽しいですよ。すり抜けてくる新種のスパムが入りだすと、対策を考えるのがまた楽しかったりして(笑)。ま、ソフトに任せて鍛えた方が効率は良さそうですが、こういう物好きもいるということで。😎

2009/11/10 17:19 hasegawa への返信

xyさん、takanoさん、お子様ランチ.さんありがとうございます。

確かに偽装に手動で対応しようとするのは現実的ではないですよね、いつまでも終わらないバツゲームのようなもので…SPAM対策自体がイタチゴッコなんでしょうが…。

たくさんのアドバイスを頂いて「いろいろ策を講じて、あとはまめに対応させる」というのが基本かなと考えています。


> 事後編集可能ですよ。

ログインすると「編集」といリンクが出てきてましたね

投稿する瞬間だけログインしてましたので見逃してましたm(_ _)m


> 80くらいのルール…楽しいですよ

スゴイルール数(^^) 自分の20ルールもけっこう手間をかけていたつもりでしたが、まだまだ駆け出しですね。

今後のバージョンアップとかを考えると、Mail.appに実装されている機能でマメに管理するのが、その時一番スムーズに切り替えられる気がするので「ルール」で対応できたらそれがベストかと思います。機能がスパッと切り捨てられる場合もあるようですが…


アドレスブックのグループで選別するのは複数のパソコンに設定するのに便利そうですね、日本語のSPAMは、これでもかって感じで同じ発信者から送ってくるのが多いので、これも対策の一つとして施したいと思います。


GmailのMail Fetcherについて、ちょっと見ただけですが、まだ理解できていないので調べてみます。

こう言ったシステムでMail.appにSPAMが入ってこない設定が、精神衛生上一番かなと思います。サーバーのフィルタリングがイマイチなので検討してみたいです。

2009/11/10 23:26 hasegawa への返信

メールのヘッダ情報を基にspam対策を講じたいのであれば,「procmail レシピ」で検索すると,参考になると思います。


私も独自の「.procmailrc」を作成しておりますが,レシピを公開してしまうとその裏を書くspamが現れることが危惧されるので,一部のみご紹介します。


その前に,ご使用のメールサーバへ「.forward」や「.procmailrc」ファイルを作成できるかどうかの問題もあります。

メールサーバがリモートログインに対応していない場合は,MailServeを導入して,Macのホームフォルダ内に「.forward」や「.procmailrc」ファイルを設置することもできます。


とりあえず,私のインストール時の覚え書きをご紹介します。


  • MailServeを購入し, Applications(アプリケーション)->Utilities(ユーティリティ) フォルダ等にコピーし,これを起動する。
  • ●「Incoming」タブの「Fetchmail」タブを選択する。
  • ●「+」ボタンを押すと,その下の入力フィールドが入力可能状態になる。
  • ●Server Nameの左にpopサーバを記入。
  • ●User-IDの左にメールサーバのアカウント名(メールアドレスの@マークの左側)を記入。
  • ●Passwordの左にメールサーバのパスワードを記入。(←平文のままであることに注意。)
  • ●Local-IDの左にMacでのアカウント名を記入。
  • ●Keepの左をYESにする。(←MailServe経由でメールを受信できることが確認できるまでメールサーバのメールを消さない設定にしておく!)
  • ●念のため現時点までに届いているメールを一度普段使っているメールソフトで受信しておく。
  • ●普段使っているメールソフトで自分宛にテストメールを送っておく。
  • ●MailServeの「Start Postfix」ボタンを押す。
  • ●「Start Fetchmail」ボタンを押す。
  • ●「Incoming」タブの「Basic」タブを選択する。
  • ●「Start POP3」ボタンを押す。
  • このページを参考にしてFireWallの110番ポートと25番ポートを開放する。
    ↑Leopardの場合は,能動的に開放させる必要は無く,POP3やPostfixをスタートさせた時にソフトウェアの接続許可を求められ,その時に許可をすれば自動的にポートが開かれる。
  • ●普段使っているメールソフトのサーバの設定で受信サーバ名をMacのホスト名に変更する。
  • ●メールサーバのアカウント名とMacでのアカウント名が異なる場合はメールソフトの受信サーバのアカウント名もMacでのアカウント名に変更する。
  • ●普段使っているメールソフトで先程送信したテストメールを受信できるかテストする。
  • ●受信できていれば成功。
  • ●受信できないようであればメールソフトの受信サーバの設定などを元に戻しメール処理を諦めるか,自力でなんとかする。
  • ●諦めるときは,
    • ■MailServeのfetchmailの設定で,該当するアカウントを「-」ボタンで消去し
    • ■「Stop Fetchmail」ボタンを押す。
  • ●1週間程度運用し,問題無いようであれば,KeepをNOにする。 他の端末でもメールサーバにアクセスするならKeepのままで,他の端末でメールサーバのメールを消去するようにする。



レシピは以下の通りです。「iso-2022-jp」以外のメールに「X-Not_Japanese:」というヘッダが付与されます。


PATH=/bin:/sbin:/usr/bin:/usr/sbin :0 * ^Subject:.*(euc-kr|ks_c_|GB2312|GB-2312|windows-1251|koi8-r) /dev/null :0 * ^Content-Type:.*(euc-kr|ks_c_|GB2312|GB-2312|windows-1251|koi8-r) /dev/null :0 HB * ! ? head -n 400 | egrep -i iso-2022-jp { :0 * ^Content-Transfer-Encoding:\ base64 { :0 Bf * ! ? head -n 400 | egrep -i name= |formail -A "X-Not_Japanese: base64" } :0 EBf * ? head -n 400 | egrep -i "charset=(euc-kr|ks_c_|gb2312|gb-2312|windows-1251|koi8-r)" |formail -A "X-Not_Japanese: Korean or Chinese or Cyrillic" :0 Ef |formail -A "X-Not_Japanese: may be English" }

2009/11/12 06:42 kanekaka への返信

kanekaka様、ありがとうございます。

「procmail」や「procmail レシピ」「procmail mail.app」等で検索していくつかのページを見てみたのですが、正直なところ敷居が高くて…スイマセン

解説に初めて見る単語が溢れてます(^^;


レシピの一部も公開して頂き、私のスキルなど関係なしにこのスレが、Mail.appでのメールの振り分けのノウハウ集として育てて頂いている気がします。


ところで私の現状はというと、あれこれ試している内に正常に振り分けられていたものまでゴミ箱フォルダに直行するもの多数で、ゴミ箱の中を確認する(漁る?)作業が始まるという本末転倒で情けない状況です。

気合い入れて設定し直します。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

Mail.appで英語のメールをゴミ箱に移動するルール設定について

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。