Alguns testes do SpamAssassin usam os cabeçalhos de e-mail, então são mais ou menos necessários. Pelo menos, sem eles, seus resultados serão muito menos precisos.
Eu sugiro que a abordagem mais fácil é colocar os documentos HTML em um email. Isso é muito fácil de fazer com um script de shell trivial. Observe que este e o próximo exemplo usam flip
(que você pode ter que instalar) para converter em finais de linha CRLF do email. Você também pode usar sed
, suponho. Ou talvez esteja bem sem isso.
cat <<HEADER - in/message.html | flip -m > out/message.eml
From: "Your Company Name" <[email protected]>
To: "Your Name" <[email protected]>
Date: $(date -R)
Content-type: text/html; charset=utf-8
Content-transfer-encoding: binary
Subject: Your Subject Here
HEADER
Desvantagem, isso deixa você com uma mensagem não MIME em HTML. Você pode ter que desabilitar uma regra do SpamAssassin que atrelará sua mensagem a ser apenas HTML.
Outra opção é o utilitário mime-construct
, que pode ser necessário instalar novamente. Então você faria:
mime-construct --to '"Your Name" <[email protected]>' \
--subject "Your Subject Here" \
--header 'From: "Your Company Name" <[email protected]>' \
--header "Date: $(date -R)" \
--multipart 'multipart/alternative' --output \
--type 'text/plain; charset=utf-8' --file in/message.txt \
--type 'text/html; charset=utf-8' --file in/message.html \
| flip -m - > out/message.eml
Você pode usar lynx -dump
para tornar sua alternativa de texto simples (por exemplo, lynx -dump in/message.html > in/message.txt
)
Você deve então poder executar o arquivo gerado através do SpamAssassin como um e-mail.
Não é preciso dizer que você precisa seguir outras práticas recomendadas por e-mail (confirmou a aceitação, o cancelamento de inscrição, etc.).