Si votre programme s'exécute sur un système Linux/Unix, vous pouvez utiliser l'outil sendmail en Perl pour envoyer des e-mails.
Voici un exemple de script simple pour envoyer des e-mails :
Exemple
#!/usr/bin/perl # Réception d'e-mail, ici je le définis comme mon email QQ, vous devez le modifier avec votre propre email $to = ' [email protected] ' ; #E-mail de l'expéditeur $from = ' [email protected] ' ; #Titre $subject = ' Tutoriel du codeur Test d'envoi d'e-mails Perl ' ; $message = ' Ceci est un e-mail envoyé en utilisant Perl. ' ; ouvrir ( MAIL , " |/usr/sbin/sendmail -t " ) # En-tête du courrier ; imprimer MAIL " À : $à n " ; imprimer MAIL " De : $from n " ; imprimer MAIL " Objet : $sujet n n " ; # Informations sur l'e-mail imprimer MAIL $ message ; fermer ( MAIL ) ; " E-mail envoyé avec succès n " ; En exécutant le programme ci-dessus, le résultat de sortie est :
E-mail envoyé avec succès
Dans des circonstances normales, l'e-mail ci-dessus sera intercepté par la boîte aux lettres QQ. Nous pouvons l'ajouter à la liste blanche. La méthode d'opération peut être cliqué : https://kf.qq.com/faq/120322fu63YV130805rYRFzu.html.
Après avoir rejoint la liste blanche, vous pouvez recevoir des e-mails normalement.
Envoyer un e-mail au format HTML
Nous pouvons ajouter Content-type: text/htmln dans l'en-tête de l'e-mail pour envoyer des emails au format HTML. L'exemple est le suivant :
Exemple
#!/usr/bin/perl # Réception d'e-mail, ici je le définis comme mon email QQ, vous devez le modifier avec votre propre email $to = ' [email protected] ' ; #E-mail de l'expéditeur $from = ' [email protected] ' ; #Titre $subject = ' Coder Tutorial Perl Sending Email Test ' ; $message = ' <h1>Ceci est un email envoyé en utilisant Perl<h1><p>Bonjour, je viens du Coder Tutorial, l'adresse est : http:/ /www .codercto.com. </p> ' ; ouvrir ( MAIL , " |/usr/sbin/sendmail -t " ) # En-tête du courrier ; imprimer MAIL " À : $à n " ; imprimer MAIL " De : $from n " ; imprimer MAIL " Sujet : $sujet n " ; imprimer MAIL " Type de contenu : texte/html n " ; # Informations sur l'e-mail imprimer MAIL $ message ; fermer ( MAIL ) ; " E-mail envoyé avec succès n " ; Après une exécution réussie, vérifiez le contenu de l'e-mail, comme indiqué ci-dessous :
Utilisation du module MIME::Lite
Si vous utilisez un système Windows, il n'existe pas d'outil sendmail. À l'heure actuelle, vous pouvez utiliser le module MIME:Lite de Perl comme client de messagerie pour envoyer du courrier.
L'adresse de téléchargement du module MIME:Lite est : MIME-Lite-3.030.tar.gz.
Ici, nous utilisons cpan pour installer directement (les autorisations root sont requises) sans téléchargement :
$ cpan -i MIME::Lite…… /usr/bin/make install -- OK
Après une installation réussie, montrons un exemple :
Exemple
#!/usr/bin/perl utiliser MIME::Lite # Recevoir un e-mail, ici je le définis comme mon e-mail QQ, vous devez le modifier avec votre propre e-mail $to = ' [email protected] ' ; # Cc, séparez-en plusieurs par des virgules # $cc = '[email protected], [email protected]'; E-mail de l'expéditeur $from = ' [email protected] ' ; #Titre $subject = ' Tutoriel du codeur Test d'envoi d'e-mails Perl ' ; $message = ' Il s'agit d'un e-mail envoyé en utilisant Perl, en utilisant le module MIME::Lite. ' ; $msg = MIME::Lite -> nouveau ( De => $de , À => $à , Cc => $cc , Sujet => $sujet , Données => $message ) ; $msg - > envoyer ; " E-mail envoyé avec succès n " ; Après une exécution réussie, vérifiez le contenu de l'e-mail, comme indiqué ci-dessous :
Envoyer un e-mail au format HTML
Nous pouvons ajouter Content-type: text/htmln dans l'en-tête de l'e-mail pour envoyer des emails au format HTML. L'exemple est le suivant :
Exemple
#!/usr/bin/perl utiliser MIME::Lite # Recevoir un e-mail, ici je le définis comme mon e-mail QQ, vous devez le modifier avec votre propre e-mail $to = ' [email protected] ' ; # Cc, séparez-en plusieurs par des virgules # $cc = '[email protected], [email protected]'; E-mail de l'expéditeur $from = ' [email protected] ' ; #Titre $subject = ' Tutoriel du codeur Test d'envoi d'e-mails Perl ' ; $message = ' <h1>Ceci est un e-mail envoyé en utilisant Perl<h1><p>À l'aide du module MIME::Lite. </p><p>D'après le tutoriel du codeur, l'adresse est : http://www.codercto.com. </p> ' ; $msg = MIME::Lite -> nouveau ( De => $de , À => $à , Cc => $cc , Sujet => $sujet , Données => $message ) ; #Ajouter des informations d'en-tête $msg -> attr ( " type de contenu " = > " texte/html " ) $msg - > envoyer ; " E-mail envoyé avec succès n " ; Après une exécution réussie, vérifiez le contenu de l'e-mail, comme indiqué ci-dessous :
Envoyer un e-mail avec pièces jointes
Un exemple d'envoi d'un e-mail avec pièces jointes est le suivant :
Exemple
#!/usr/bin/perl utiliser MIME::Lite # Recevoir un e-mail, ici je le définis comme mon e-mail QQ, vous devez le modifier avec votre propre e-mail $to = ' [email protected] ' ; # Cc, séparez-en plusieurs par des virgules # $cc = '[email protected], [email protected]'; E-mail de l'expéditeur $from = ' [email protected] ' ; #Titre $subject = ' Tutoriel du codeur Test d'envoi d'e-mails Perl ' ; $message = ' Il s'agit d'un e-mail envoyé en utilisant Perl, en utilisant le module MIME::Lite et contenant des pièces jointes. ' ; $msg = MIME::Lite -> nouveau ( De => $de , À => $à , Cc => $cc , Sujet => $sujet , tapez => ' multipart/mixte ' # Balise de pièce jointe ) ; $msg -> joindre ( Tapez => ' TEXTE ' , Données => $message ) ; #Spécifier les informations de la pièce jointe $msg -> joindre ( Type => ' TEXTE ' , Chemin => ' ./codercto.txt ' , # dans le répertoire courant Nom du fichier => ' codercto.txt ' , Disposition => ' pièce jointe ' ) ; $msg - > envoyer ; " E-mail envoyé avec succès n " ; Après une exécution réussie, vérifiez le contenu de l'e-mail, comme indiqué ci-dessous :
Vous pouvez ajouter plusieurs pièces jointes en utilisant plusieurs $msg->attach.