Si su programa se ejecuta en un sistema Linux/Unix, puede utilizar la herramienta sendmail en Perl para enviar correos electrónicos.
El siguiente es un ejemplo de script simple para enviar correos electrónicos:
Ejemplo
#!/usr/bin/perl # Recibiendo correo electrónico, aquí lo configuro como mi correo electrónico QQ, debes modificarlo a tu propio correo electrónico $ to = ' [email protected] ' ; $ de = ' [email protected] ' ; $subject = ' Codificador tutorial Perl enviando prueba de correo electrónico ' ; $message = ' Este es un correo electrónico enviado usando Perl. ' ; open ( CORREO , " |/usr/sbin/
sendmail -t " ) ; imprimir CORREO " Para: $ a n " ; CORREO " Desde: $ desde n " ; CORREO " Asunto: $asunto n n " # Información de correo electrónico ; imprimir CORREO $ mensaje ; cerrar ( CORREO ) ; " Correo electrónico enviado exitosamente n " ; Al ejecutar el programa anterior, el resultado de salida es:
Correo electrónico enviado correctamente
En circunstancias normales, el correo electrónico anterior será interceptado por el buzón de QQ. Podemos agregarlo a la lista blanca. Se puede hacer clic en el método de operación: https://kf.qq.com/faq/120322fu63YV130805rYRFzu.html.
Después de unirse a la lista blanca, podrá recibir correos electrónicos normalmente.
Enviar correo electrónico en formato HTML
Podemos agregar tipo de contenido: text/htmln en el encabezado del correo electrónico para enviar correos electrónicos en formato HTML. El ejemplo es el siguiente:
Ejemplo
#!/usr/bin/perl # Recibiendo correo electrónico, aquí lo configuro como mi correo electrónico QQ, debes modificarlo a tu propio correo electrónico $ to = ' [email protected] ' ; $ de = ' [email protected] ' ; $subject = ' Coder Tutorial Perl enviando prueba de correo electrónico ' ; $message = ' <h1>Este es un correo electrónico enviado usando Perl<h1><p>Hola, soy del Coder Tutorial, la dirección es: http:/ /www .codercto.com. </p> ' ; open ( CORREO , " |/usr/sbin/
sendmail -t " ) ; imprimir CORREO " Para: $ a n " ; CORREO " Desde: $ desde n " ; CORREO " Asunto: $ asunto n " ; CORREO " Tipo de contenido: texto/html n " # Información de correo electrónico ; imprimir CORREO $ mensaje ; cerrar ( CORREO ) ; " Correo electrónico enviado exitosamente n " ; Después de una ejecución exitosa, verifique el contenido del correo electrónico, como se muestra a continuación:
Usando el módulo MIME::Lite
Si está utilizando un sistema de ventanas, no existe la herramienta sendmail. En este momento puede utilizar el módulo MIME:Lite de Perl como cliente de correo para enviar correo.
La dirección de descarga del módulo MIME:Lite es: MIME-Lite-3.030.tar.gz.
Aquí usamos cpan para instalar directamente (se requieren permisos de root) sin descargar:
$ cpan -i MIME::Lite…… /usr/bin/make install -- OK
Después de una instalación exitosa, demostremos un ejemplo:
Ejemplo
#!/usr/bin/perl use MIME::Lite ; # Recibir correo electrónico, aquí lo configuro como mi correo electrónico QQ, debe modificarlo a su propio correo electrónico $to = ' [email protected] ' ; # Cc, separe varios con comas # $cc = '[email protected], [email protected]'; #correo electrónico del remitente $ de = ' [email protected] ' ; $subject = ' Codificador tutorial Perl enviando prueba de correo electrónico ' ; $message = ' Este es un correo electrónico enviado usando Perl, usando el módulo MIME::Lite. ' ; $msg = MIME::Lite -> nuevo ( Desde => $desde , Hasta => $a , CC => $cc , Asunto => $asunto , Datos => $mensaje ) ; $mensaje - > enviar ; " Correo electrónico enviado exitosamente n " ; Después de una ejecución exitosa, verifique el contenido del correo electrónico, como se muestra a continuación:
Enviar correo electrónico en formato HTML
Podemos agregar tipo de contenido: text/htmln en el encabezado del correo electrónico para enviar correos electrónicos en formato HTML. El ejemplo es el siguiente:
Ejemplo
#!/usr/bin/perl use MIME::Lite ; # Recibir correo electrónico, aquí lo configuro como mi correo electrónico QQ, debe modificarlo a su propio correo electrónico $to = ' [email protected] ' ; # Cc, separe varios con comas # $cc = '[email protected], [email protected]'; #correo electrónico del remitente $ de = ' [email protected] ' ; $subject = ' Codificador tutorial Perl enviando prueba de correo electrónico ' ; $message = ' <h1>Este es un correo electrónico enviado usando Perl<h1><p>Usando el módulo MIME::Lite. </p><p>Del tutorial del codificador, la dirección es: http://www.codercto.com. </p> ' ; $msg = MIME::Lite -> nuevo ( Desde => $desde , Hasta => $a , CC => $cc , Asunto => $asunto , Datos => $mensaje ) ; #Agregar información del encabezado $msg -> attr ( " tipo de contenido " => " texto/html " ) ; $msg - > enviar ; " Correo electrónico enviado exitosamente n " ; Después de una ejecución exitosa, verifique el contenido del correo electrónico, como se muestra a continuación:
Enviar correo electrónico con archivos adjuntos
Un ejemplo de envío de un correo electrónico con archivos adjuntos es el siguiente:
Ejemplo
#!/usr/bin/perl use MIME::Lite ; # Recibir correo electrónico, aquí lo configuro como mi correo electrónico QQ, debe modificarlo a su propio correo electrónico $to = ' [email protected] ' ; # Cc, separe varios con comas # $cc = '[email protected], [email protected]'; #correo electrónico del remitente $ de = ' [email protected] ' ; $subject = ' Codificador tutorial Perl enviando prueba de correo electrónico ' ; $message = ' Este es un correo electrónico enviado usando Perl, usando el módulo MIME::Lite y que contiene archivos adjuntos. ' ; $msg = MIME::Lite -> nuevo ( Desde => $desde , Hasta => $a , CC => $cc , Asunto => $asunto , Tipo => ' multiparte/mixto ' # Etiqueta de archivo adjunto ) ; $mensaje -> adjuntar ( Tipo => ' TEXTO ' , Datos => $mensaje ) ; #Especificar información del archivo adjunto $msg -> adjuntar ( Tipo => ' TEXTO ' , Ruta => ' ./codercto.txt ' , # en el directorio actual Nombre de archivo => ' codercto.txt ' , Disposición => ' adjunto ' ) ; $mensaje - > enviar ; " Correo electrónico enviado exitosamente n " ; Después de una ejecución exitosa, verifique el contenido del correo electrónico, como se muestra a continuación:
Puede agregar varios archivos adjuntos utilizando varios $msg->attach.