网站大量收购独家精品文档,联系QQ:2885784924

用Perl编写读取POP3邮箱的应用程序.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用Perl编写读取POP3邮箱的应用程序.doc

  用Perl编写读取POP3邮箱的应用程序   本文将讨论开发人员利用Perl特定的能力编写POP3电子邮件应用程序。   像微软的Outlook和Mozilla的雷鸟(Thunderbird)这样的电子邮件客户端程序能够让收发电子邮件变得极其简单绝大多数时候,你需要做的只不过是点击一下工具条上的按钮,软件会为你完成与电子邮件服务器进行通信、验证密码、收取电子邮件等复杂的工作。   但是在这种具有欺骗性的简单表象背后却牵涉大量的软件编程工作。而且,如果你是一个软件开发人员,你可能有一天会发现如果能够把这样的程序放到自己的应用程序会有多好啊。   不用担心那么多,因为如果你在使用Perl,那么你就可以利用一个叫做Net::POP3的小CPAN模块来实现这一愿望,这个十分有用的模块会为你完成大多数复杂的工作。这个模块向POP3服务器的交互操作公开一个简单但是非常强大的API,提供一些预设的方法来进行服务器身份验证、消息列表和收取、消息删除,以及结束会话简而言之,它提供了满足用户基本需要的一切。   注:列表A到C里的代码文本可以从可下载的Zip文件里获得。   本文将通过使用Net::POP开发一个简单的POP3电子邮件应用程序来探讨它的一些功能。一开始你需要在Perl提示符下运行下面的命令来下载和安装这个模块(如果你还没有的话):   perlgt; perl -MCPAN -e install Net::POP3   开始创建下面的Perl脚本(列表A):   列表A #!/bin/perl # import package use Net::POP3; # ask user for critical variables print Mail host: ; $host = lt;STDINgt;; chomp($host); print ; print Mailbox username: ; $user = lt;STDINgt;; chomp($user); print ; print Mailbox passp($pass); # initiate connection # default timeout = 120 sec $conn = Net::POP3-gt;neMsg = $conn-gt;login($user, $pass) or die(ERROR: Unable to login.); # display number of messages if ($numMsg gt; 0) {   print Mailbox has $numMsg message(s).; } else {   print Mailbox is empty.; } # close connection $conn-gt;quit();  这个代码段会要求用户输入三个内容:电子邮件服务器的主机名、POP3用户名和相应的密码。一旦输入了这三项内容,一个新的Net::POP3对象就会被创建,而对象的login()方法会被用来打开一个到主机的连接,并验证所提供的凭据。如果提供的凭据被服务器认可,那么login()方法就会返回邮箱里的消息数量(或者返回0,如果没有消息的话)。   下面就是它的一个实际例子: Mail host: pop.mailbox. Mailbox username: jane Mailbox passessage(s).  当然,仅仅知道消息的数量是远远不够的你肯定希望知道这些消息的内容。通过Net::POP3的top()方法就能够达到这个目的,它会扫描消息的前X行,并返回一个指向含有已收取数据的数组的参考。下面就是一个例子,(列表B)会取回邮箱里所有消息的前20行:   列表B #!/bin/perl # import package use Net::POP3; # ask user for critical variables print Mail host: ; $host = lt;STDINgt;; chomp($host); print ; print Mailbox username: ; $user = lt;STDINgt;; chomp($user); print ; print Mailbox passp($pass); # initiate connection # default timeout = 120 sec $conn = Net::POP3-gt;neMsg = $conn-gt;login($user, $pass) or die(ERROR: Unable to login.); # get message numbers # ite

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档