我想读取邮箱中的邮件,提取邮件中的信息,不知道如何可以读取邮件哪<br><br>
<div><span class="gmail_quote">在07-12-8,<b class="gmail_sendername">Qiang ( James ) Li</b> <<a href="mailto:shijialee@gmail.com">shijialee@gmail.com</a>> 写道:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">不好意思,这几天比较忙.... 下面是我得回复 :<br><br>rorot wrote:<br>> 在07-12-3,*Qiang ( James ) Li* 写道:<br>><br><br>>
<br>> 另外,我碰巧要用从网页的 DOM 里提取数据,试了一下 Web::Scraper 发现很好<br>> 用。<br>> <a href="http://search.cpan.org/~miyagawa/Web-Scraper-0.24/lib/Web/Scraper.pm">http://search.cpan.org/~miyagawa/Web-Scraper-0.24/lib/Web/Scraper.pm
</a><br>> 文档里的例子就能说明它的用途。<br>><br>><br>> 一下子没看明白Web::Scraper的优势。这个。。。。。。。<br><br>我也是刚开始. Web::Scraper 的优势是你可以根据 CSS (class/span 名称) 和<br>html tag 来获得你想要的内容.<br><br>作者 use.perl 上有个例子:<br><br>use Web::Scraper;
<br>use URI;<br><br>my $uri =<br>URI->new("<a href="http://wikisubtitles.net/ajax_loadShow.php?show=65&season=3">http://wikisubtitles.net/ajax_loadShow.php?show=65&season=3</a>");<br>my $scraper = scraper {
<br> process '//td[@class="idioma"][text()=~"English \(US\)"]/..//a',<br>'links[]' => '@href';<br>};<br>my $result = $scraper->scrape($uri);<br><br>解释一下就是寻找使用 class 名称为 idioma 的 td, 内容匹配 English (US),
<br>然后把 td 里面的链接抓来. 这个模块是基于 ruby scraper 工具,目前 perl 版<br>的文档很少,基本上要看 ruby 的文档才可以.<br><br>><br>> 程序是运行在 mod_perl 下的么?如果是的话那就没有必要动态加载。即使在<br>> plain cgi 下,多加载一个或两个模块对运行速度到底有多大区别?<br>><br>> 常说的一句话:在你没有找到瓶颈的时候,不要做无谓的提速。
<br>><br>> 动态加载你可以使用 require :<br>><br>> if ( $output_type = 'xml' ) {<br>> eval { require XML::OUTPUT };<br>> die if $@;<br>> print $xml_output;<br>> }<br>
><br>><br>> 这话说的对,用eval{ require...}处理动态加载,不失为一种方法。不过我现把<br>> 该用到的块先包进来再说。其余在以后调优。另外,我有个关于mod_perl的问题。<br>> 就是自己的代码包了很多自己写的模块,然后在mod_perl下跑,但是由于在开发阶<br>> 段,所以经常性的修改被脚本包含的模块,但是却不见mod_perl立即更新。而且其<br>> 启动时加载的原来的老模块的内容。搞的我每次修改了模块,都要重启一次
<br>> Apache, 这个问题如何解决呢?<br>><br>><br><br>mod_perl 文档里有详细的讲,这是 1.x 的文档:<br><a href="http://perl.apache.org/docs/1.0/guide/porting.html#Reloading_Modules_and_Required_Files">http://perl.apache.org/docs/1.0/guide/porting.html#Reloading_Modules_and_Required_Files
</a><br>开发时可以使用 Apache::Reload. 但在 production 里就不适合了.<br><br>Qiang<br>_______________________________________________<br>China-pm mailing list<br><a href="mailto:China-pm@pm.org">China-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/china-pm">
http://mail.pm.org/mailman/listinfo/china-pm</a></blockquote></div><br><br clear="all"><br>-- <br>BR<br>Steven.zhu