1

バウンスメールメッセージを検出するための正規表現(またはそのようなものがある場合は他の方法)を探しています。これまで、無人のメールボックスを調べて、見つけた文字列を正規表現に追加してきました。私が車輪の再発明をするのではなく、誰かがすでに完成している何かを持っているだろうと思いました。

これが私がこれまでに持っているものの例です:

/reason: 550|permanent fatal errors|Error 550|Action: Failed|Mailbox does not exist|Delivery to the following recipients failed/i
4

5 に答える 5

1

バウンスされたメッセージの完全なヘッダーを確認し、サーバーに含まれている可能性のあるXヘッダーの一般的な要素を特定することをお勧めします。これにより、件名の解析よりも誤検知が大幅に少なくなります。

于 2009-10-26T23:57:19.660 に答える
1

これを 100% 機能させるには、メール サーバーが多様すぎますが、メッセージの本文ではなくヘッダーを調べた方がよいでしょう。ヘッダーは本文とは異なり、機械で読み取り可能であるためです。

「エラー」を含むヘッダーを探すことから始めます。

于 2009-10-26T23:10:25.363 に答える
1

あなたのケースではやり過ぎかもしれませんが、最も正確な解決策はおそらくスパム フィルタリング ツールを使用することです。

個人的にはSpamAssassinをお勧めします。これは、コマンドライン インターフェイス「spamassassin」を備えた perl モジュールとしてパッケージ化されており、必要なことを実行するように強制することができます。バウンス メッセージ ルールは (当然のことながら) BOUNCE_MESSAGE と呼ばれます。残念ながら、コピーできる正規表現ほど単純ではありません。

于 2009-10-26T23:18:42.330 に答える
1

受信者の電子メールごとに一意の Return-path: 電子メール アドレスを生成します。その POP3 サーバーでキャッチオール アカウントを作成し、それらを照合します。基本的にこれはVERPです。

于 2011-10-24T10:24:00.753 に答える