Se o seu programa for executado em um sistema Linux/Unix, você poderá usar a ferramenta sendmail em Perl para enviar e-mails.
A seguir está um exemplo de script simples para envio de e-mails:
Exemplo
#!/usr/bin/perl # Recebendo e-mail, aqui eu defini-lo como meu e-mail QQ, você precisa modificá-lo para seu próprio e-mail $to = ' [email protected] ' ; #E-mail do remetente $ from = ' [email protected] ' ; $subject = ' Tutorial do codificador Perl enviando teste de e-mail ' ; $message = ' Este é um e-mail enviado usando Perl. ' ; open ( MAIL , " |/usr/sbin/sendmail -t " ) ; imprimir CORRESPONDÊNCIA " Para: $para n " ; CORRESPONDÊNCIA " De: $de n " ; CORRESPONDÊNCIA " Assunto : $assunto n n " ; imprimir CORRESPONDÊNCIA $ mensagem ; fechar ( MAIL ) ; " E-mail enviado com sucesso n " ; Executando o programa acima, o resultado de saída é:
E-mail enviado com sucesso
Em circunstâncias normais, o e-mail acima será interceptado pela caixa de correio QQ. Podemos adicioná-lo à lista de permissões. O método de operação pode ser clicado: https://kf.qq.com/faq/120322fu63YV130805rYRFzu.html.
Depois de entrar na lista de permissões, você poderá receber e-mails normalmente.
Enviar e-mail em formato HTML
Podemos adicionar Content-type: text/htmln no cabeçalho do email para enviar emails em formato HTML.
Exemplo
#!/usr/bin/perl # Recebendo e-mail, aqui eu defini-lo como meu e-mail QQ, você precisa modificá-lo para seu próprio e-mail $to = ' [email protected] ' ; #E-mail do remetente $ from = ' [email protected] ' ; $subject = ' Tutorial do Coder Perl enviando teste de e-mail ' ; $message = ' <h1>Este é um email enviado usando Perl<h1><p>Olá, sou do Tutorial do Coder, o endereço é: http:// /www .codercto.com. </p> ' ; open ( MAIL , " |/usr/sbin/
sendmail -t " ) ; imprimir CORRESPONDÊNCIA " Para: $para n " ; CORRESPONDÊNCIA " De: $de n " ; CORRESPONDÊNCIA " Assunto: $ assunto n " ; CORRESPONDÊNCIA " Tipo de conteúdo: text/html n " ; imprimir CORRESPONDÊNCIA $ mensagem ; fechar ( MAIL ) ; " E-mail enviado com sucesso n " ; Após a execução bem-sucedida, verifique o conteúdo do e-mail, conforme mostrado abaixo:
Usando o módulo MIME::Lite
Se você estiver usando um sistema de janelas, não existe uma ferramenta sendmail. Neste momento você pode usar o módulo MIME:Lite do perl como um cliente de email para enviar emails.
O endereço de download do módulo MIME:Lite é: MIME-Lite-3.030.tar.gz.
Aqui usamos cpan para instalar diretamente (são necessárias permissões de root) sem fazer download:
$ cpan -i MIME::Lite…… /usr/bin/make install -- OK
Após a instalação bem-sucedida, vamos demonstrar um exemplo:
Exemplo
#!/usr/bin/perl use MIME::Lite ; # Receba email, aqui eu defini-lo como meu email QQ, você precisa modificá-lo para seu próprio email $to = ' [email protected] ' ; # Cc's, separe vários com vírgulas # $cc = '[email protected], [email protected]'; #e-mail do remetente $ from = ' [email protected] ' ; $subject = ' Tutorial do codificador Perl enviando teste de e-mail ' ; $message = ' Este é um e-mail enviado usando Perl, usando o módulo MIME::Lite. ' ; $msg = MIME::Lite -> novo ( De => $de , Para => $para , Cc => $cc , Assunto => $assunto , Dados => $ mensagem ) ; $ msg -> enviar ; " E-mail enviado com sucesso n " ; Após a execução bem-sucedida, verifique o conteúdo do e-mail, conforme mostrado abaixo:
Enviar e-mail em formato HTML
Podemos adicionar Content-type: text/htmln no cabeçalho do email para enviar emails em formato HTML.
Exemplo
#!/usr/bin/perl use MIME::Lite ; # Receba e-mail, aqui eu defini-lo como meu e-mail QQ, você precisa modificá-lo para seu próprio e-mail $to = ' [email protected] ' ; # Cc's, separe vários com vírgulas # $cc = '[email protected], [email protected]'; #e-mail do remetente $ from = ' [email protected] ' ; $subject = ' Tutorial do codificador Perl enviando teste de e-mail ' ; $message = ' <h1>Este é um e-mail enviado usando Perl<h1><p>Usando o módulo MIME::Lite. </p><p>No tutorial do codificador, o endereço é: http://www.codercto.com. </p> ' ; $msg = MIME::Lite -> novo ( De => $de , Para => $para , Cc => $cc , Assunto => $assunto , Dados => $ mensagem ) ; #Adicionar informações de cabeçalho $msg -> attr ( " tipo de conteúdo " => " texto/html " ) ; $msg - > enviar ; " E-mail enviado com sucesso n " ; Após a execução bem-sucedida, verifique o conteúdo do e-mail, conforme mostrado abaixo:
Enviar e-mail com anexos
Um exemplo de envio de um e-mail com anexos é o seguinte:
Exemplo
#!/usr/bin/perl use MIME::Lite ; # Receba email, aqui eu defini-lo como meu email QQ, você precisa modificá-lo para seu próprio email $to = ' [email protected] ' ; # Cc's, separe vários com vírgulas # $cc = '[email protected], [email protected]'; #e-mail do remetente $ from = ' [email protected] ' ; $subject = ' Tutorial do codificador Perl enviando teste de email ' ; $message = ' Este é um email enviado usando Perl, usando o módulo MIME::Lite e contendo anexos. ' ; $msg = MIME::Lite -> novo ( De => $de , Para => $para , Cc => $cc , Assunto => $assunto , Tipo => ' multipart/misto ' # Etiqueta de anexo ) ; $msg -> anexar ( Tipo => ' TEXTO ' , Dados => $ mensagem ) ; #Especifique as informações do anexo $msg -> anexar ( Tipo => ' TEXTO ' , Caminho => ' ./codercto.txt ' , # no diretório atual Nome do arquivo => ' codercto.txt ' , Disposição => ' anexo ' ) ; $ msg -> enviar ; " E-mail enviado com sucesso n " ; Após a execução bem-sucedida, verifique o conteúdo do e-mail, conforme mostrado abaixo:
Você pode adicionar vários anexos usando vários $msg->attach.