﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-罗明的博客-随笔分类-Perl</title><link>http://www.blogjava.net/Andyluo/category/18947.html</link><description>&lt;table&gt;&lt;tr&gt;&lt;td&gt;锻炼身体、提升技能、修身养性&lt;br&gt;
Eclipse, Linux, GWT, Google, AJAX&lt;br&gt;
&lt;/td&gt;&lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/td&gt;&lt;td&gt;
&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-9685945790422740";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</description><language>zh-cn</language><lastBuildDate>Tue, 13 Mar 2007 03:53:41 GMT</lastBuildDate><pubDate>Tue, 13 Mar 2007 03:53:41 GMT</pubDate><ttl>60</ttl><item><title>Twiki 4.1.1 @ RedHat Enterprise AS 4 安装备忘</title><link>http://www.blogjava.net/Andyluo/archive/2007/03/12/twiki_install.html</link><dc:creator>罗明</dc:creator><author>罗明</author><pubDate>Mon, 12 Mar 2007 03:59:00 GMT</pubDate><guid>http://www.blogjava.net/Andyluo/archive/2007/03/12/twiki_install.html</guid><wfw:comment>http://www.blogjava.net/Andyluo/comments/103265.html</wfw:comment><comments>http://www.blogjava.net/Andyluo/archive/2007/03/12/twiki_install.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Andyluo/comments/commentRss/103265.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Andyluo/services/trackbacks/103265.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 关键字：Permission denied, 不能正常登录, 中文支持&nbsp;&nbsp;<a href='http://www.blogjava.net/Andyluo/archive/2007/03/12/twiki_install.html'>阅读全文</a><img src ="http://www.blogjava.net/Andyluo/aggbug/103265.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Andyluo/" target="_blank">罗明</a> 2007-03-12 11:59 <a href="http://www.blogjava.net/Andyluo/archive/2007/03/12/twiki_install.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用Perl实现HTTP网络下载程序</title><link>http://www.blogjava.net/Andyluo/archive/2007/01/03/perlDown.html</link><dc:creator>罗明</dc:creator><author>罗明</author><pubDate>Wed, 03 Jan 2007 13:00:00 GMT</pubDate><guid>http://www.blogjava.net/Andyluo/archive/2007/01/03/perlDown.html</guid><wfw:comment>http://www.blogjava.net/Andyluo/comments/91628.html</wfw:comment><comments>http://www.blogjava.net/Andyluo/archive/2007/01/03/perlDown.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Andyluo/comments/commentRss/91628.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Andyluo/services/trackbacks/91628.html</trackback:ping><description><![CDATA[
		<p>
		</p>
		<p>先讲讲做这个小程序的动机吧，昨天看了下<a title="哈工大软件学院新闻列表" href="http://software.hit.edu.cn/ch/allnews.aspx" target="_blank">以前学院的新闻</a>，没什么更新，但发现列表很长，保留了2003年1月至今的所有新闻。<br /><br />这个新闻列表是大学期间我们了解学院信息的主要来源，都养成了每天先看新闻再看<a title="哈工大紫丁香BBS" href="http://bbs.hit.edu.cn/" target="_blank">BBS</a>的习惯。在大连实习期间更是如此，也算是产生感情了^__^，所以。。。决定把这700+新闻全部保存下来...<br /><br /><strong>需求：指定一个网址，将这个网页和里面所有的子链接页面都下载下来，保存到指定的文件夹中。<br /><br /></strong>如下图所示：<br /><img alt="news.jpg" src="http://www.blogjava.net/images/blogjava_net/andyluo/news.jpg" border="0" height="316" width="559" /><br /><br /><br />需求有了，怎么完成呢？用<a href="http://www.xunlei.com" target="_blank">迅雷</a>下载全部链接？嗯，这是个好主意，（我确实也这么做了一次，连接数开得太多了，差点被封orz ），但咱们是搞软件的@_@，这个小功能是不是写个程序就能搞定，用<a href="http://www.java.net" target="_blank">Java</a>？想到那一堆Stream的封装（new BufferedReader(new BufferedOutputStream(new FileOutputStream(new File("blabla.html"))))）...我就头晕。<br /><br />小程序用脚本语言？应该不错！<br /><br />用<a href="http://www.perl.com" target="_blank">Perl</a>还是Python？。。。经过一番网上查询论证，似乎：Perl语法复杂，但简练，API库也超级多；Python语法清晰易懂，有点像Java，适合开发大型应用。<br /><br />Java是我的最爱，也算熟悉了，就学点bt的吧，用Perl<br /><br />完成代码期间主要参考了<a href="http://perldoc.perl.org/index-language.html" target="_blank">Perl文档</a>中URL，HTML::LinkExtor，HTTP::Request的用法，<a href="http://www.perlchina.org/" target="_blank">Perl中国</a>的一篇文章<a href="http://www.perlchina.org/archive/archive.php?action=archive&amp;page=15" target="_blank">《LWP与WEB的基本使用》</a>，还占用了J2EE的上课时间来编写程序。。。<br /><br /></p>
		<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);">
				<span style="color: rgb(0, 128, 128);"> 1</span>
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);"> 2</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /># Copyright (C) 2007 罗明 &lt;andyluo197(at)gmail.com&gt;<br /></span>
				<span style="color: rgb(0, 128, 128);"> 3</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />#</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);"> 4</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);"> 5</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> strict </span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">"</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">vars</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">"</span>
				<span style="color: rgb(0, 0, 0);">; </span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);">严格遵循my scope定义</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);"> 6</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);"> 7</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> LWP</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">Simple;<br /></span>
				<span style="color: rgb(0, 128, 128);"> 8</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> HTML</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">LinkExtor;<br /></span>
				<span style="color: rgb(0, 128, 128);"> 9</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> HTTP</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">Request</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">Common;<br /></span>
				<span style="color: rgb(0, 128, 128);">10</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> LWP</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">UserAgent;<br /></span>
				<span style="color: rgb(0, 128, 128);">11</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">use</span>
				<span style="color: rgb(0, 0, 0);"> URI</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">URL;<br /></span>
				<span style="color: rgb(0, 128, 128);">12</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">13</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 从命令行参数中取主网页地址和保存文件夹</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">14</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$url</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$ARGV</span>
				<span style="color: rgb(0, 0, 0);">[</span>
				<span style="color: rgb(128, 0, 0);">0</span>
				<span style="color: rgb(0, 0, 0);">]; <br /></span>
				<span style="color: rgb(0, 128, 128);">15</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$location</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$ARGV</span>
				<span style="color: rgb(0, 0, 0);">[</span>
				<span style="color: rgb(128, 0, 0);">1</span>
				<span style="color: rgb(0, 0, 0);">];<br /></span>
				<span style="color: rgb(0, 128, 128);">16</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">17</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 子程序，解析主网页中的链接地址</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">18</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">@urls</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> ();<br /></span>
				<span style="color: rgb(0, 128, 128);">19</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">sub</span>
				<span style="color: rgb(0, 0, 0);"> urlCallback<br /></span>
				<span style="color: rgb(0, 128, 128);">20</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />{<br /></span>
				<span style="color: rgb(0, 128, 128);">21</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);">(</span>
				<span style="color: rgb(128, 0, 128);">$tag</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">%attr</span>
				<span style="color: rgb(0, 0, 0);">) </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">@_</span>
				<span style="color: rgb(0, 0, 0);">;<br /></span>
				<span style="color: rgb(0, 128, 128);">22</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="color: rgb(0, 0, 255);">return</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 255);">if</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$tag</span>
				<span style="color: rgb(0, 0, 0);"> ne </span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">a</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="color: rgb(0, 0, 0);">;<br /></span>
				<span style="color: rgb(0, 128, 128);">23</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="color: rgb(0, 0, 255);">push</span>
				<span style="color: rgb(0, 0, 0);">(</span>
				<span style="color: rgb(128, 0, 128);">@urls</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 255);">values</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">%attr</span>
				<span style="color: rgb(0, 0, 0);">);<br /></span>
				<span style="color: rgb(0, 128, 128);">24</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />}<br /></span>
				<span style="color: rgb(0, 128, 128);">25</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">26</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 用于解析链接的LinkExtractor</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">27</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$p</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> HTML</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">LinkExtor</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">new(</span>
				<span style="color: rgb(0, 0, 0);">\&amp;</span>
				<span style="color: rgb(0, 0, 0);">urlCallback);<br /></span>
				<span style="color: rgb(0, 128, 128);">28</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">29</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 载入主网页内容，及解析链接地址</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">30</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$ua</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> LWP</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">UserAgent</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">new;<br /></span>
				<span style="color: rgb(0, 128, 128);">31</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$res</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$ua</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">request(HTTP</span>
				<span style="color: rgb(0, 0, 0);">::</span>
				<span style="color: rgb(0, 0, 0);">Request</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">new(GET </span>
				<span style="color: rgb(0, 0, 0);">=&gt;</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$url</span>
				<span style="color: rgb(0, 0, 0);">)</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 255);">sub</span>
				<span style="color: rgb(0, 0, 0);">{</span>
				<span style="color: rgb(128, 0, 128);">$p</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">parse(</span>
				<span style="color: rgb(128, 0, 128);">$_</span>
				<span style="color: rgb(0, 0, 0);">[</span>
				<span style="color: rgb(128, 0, 0);">0</span>
				<span style="color: rgb(0, 0, 0);">])});<br /></span>
				<span style="color: rgb(0, 128, 128);">32</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">33</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 将链接的相对路径转换为绝对路径</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">34</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$base</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$res</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">base;<br /></span>
				<span style="color: rgb(0, 128, 128);">35</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(128, 0, 128);">@urls</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 255);">map</span>
				<span style="color: rgb(0, 0, 0);"> {</span>
				<span style="color: rgb(128, 0, 128);">$_</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> url(</span>
				<span style="color: rgb(128, 0, 128);">$_</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$base</span>
				<span style="color: rgb(0, 0, 0);">) </span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 255);">abs</span>
				<span style="color: rgb(0, 0, 0);">} </span>
				<span style="color: rgb(128, 0, 128);">@urls</span>
				<span style="color: rgb(0, 0, 0);">;<br /></span>
				<span style="color: rgb(0, 128, 128);">36</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">37</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 128, 0);">#</span>
				<span style="color: rgb(0, 128, 0);"> 将网页写入文件</span>
				<span style="color: rgb(0, 128, 0);">
						<br />
				</span>
				<span style="color: rgb(0, 128, 128);">38</span>
				<span style="color: rgb(0, 128, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(128, 0, 128);">$ua</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">request(GET(</span>
				<span style="color: rgb(128, 0, 128);">$url</span>
				<span style="color: rgb(0, 0, 0);">)</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$location</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">.</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">\\index.html</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="color: rgb(0, 0, 0);">);<br /></span>
				<span style="color: rgb(0, 128, 128);">39</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">my</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$index</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">=</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 0);">1</span>
				<span style="color: rgb(0, 0, 0);">;<br /></span>
				<span style="color: rgb(0, 128, 128);">40</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="color: rgb(0, 0, 255);">foreach</span>
				<span style="color: rgb(0, 0, 0);">(</span>
				<span style="color: rgb(128, 0, 128);">@urls</span>
				<span style="color: rgb(0, 0, 0);">)<br /></span>
				<span style="color: rgb(0, 128, 128);">41</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />{<br /></span>
				<span style="color: rgb(0, 128, 128);">42</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="color: rgb(128, 0, 128);">$ua</span>
				<span style="color: rgb(0, 0, 0);">-&gt;</span>
				<span style="color: rgb(0, 0, 0);">request(GET(</span>
				<span style="color: rgb(128, 0, 128);">$_</span>
				<span style="color: rgb(0, 0, 0);">)</span>
				<span style="color: rgb(0, 0, 0);">,</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$location</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">.</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">\\</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">.</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(128, 0, 128);">$index</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="color: rgb(0, 0, 0);">.</span>
				<span style="color: rgb(0, 0, 0);"> </span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">.html</span>
				<span style="font-weight: bold; color: rgb(0, 0, 0);">'</span>
				<span style="color: rgb(0, 0, 0);">);<br /></span>
				<span style="color: rgb(0, 128, 128);">43</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
				<span style="color: rgb(128, 0, 128);">$index</span>
				<span style="color: rgb(0, 0, 0);">+=</span>
				<span style="color: rgb(128, 0, 0);">1</span>
				<span style="color: rgb(0, 0, 0);">;<br /></span>
				<span style="color: rgb(0, 128, 128);">44</span>
				<span style="color: rgb(0, 0, 0);">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />}</span>
		</div>
		<p>
				<br />主网页保存为index.html，子网页按1、2、3排序生成1.html、2.html等<br /><br />因为有<a href="http://desktop.google.com" target="_blank">Google Desktop</a>，即使文件名是1.html...，搜索起来也是很方便的。也可以扩充下，将&lt;a&gt;&lt;/a&gt;中的新闻主题抽出来作为文件名。但这个程序对我来说已经足够了，所以就不继续做了。<br /><br />总的来说用Perl还是很简单的，库也很多，写起来挺方便！但是要记得常翻翻<a href="http://perldoc.perl.org/index-language.html" target="_blank">Perl手册</a>，呵呵<br /><br />Technorati Tag :  <a href="http://technorati.com/tag/perl" target="_blank">Perl </a><a href="http://technorati.com/tag/LWP" target="_blank">LWP</a>  <a href="http://technorati.com/tag/download" target="_blank">Download</a>  <a href="http://technorati.com/tag/web" target="_blank">web</a>  <a href="http://technorati.com/tag/script" target="_blank">script</a></p>
<img src ="http://www.blogjava.net/Andyluo/aggbug/91628.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Andyluo/" target="_blank">罗明</a> 2007-01-03 21:00 <a href="http://www.blogjava.net/Andyluo/archive/2007/01/03/perlDown.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>