|
在linux和windows下,用过了各种下载工具,结果发现有以下一些不尽如人意的地方:
1 不能针对一个站点单独设置一个下载队列。大家知道许多ftp站点对同一个ip地址有线程数的限制,如果现在我要从几个不同的站点各下载一批文件的话,结果往往是在一个站点上有好几个文件同时下载,而另一个站点上却没有下载,这种情况下不管你怎样排列下载顺序,似乎都没有用,而且许多windows的下载工具只能在系统中运行一个实例,这给人带来很多不便。
2 这个毛病是最关键的,现有的下载软件在判断下载过程是否中断时,会产生误判。在我们闵行区教育局的网络上,网络质量极差,每天早上8点到下午5点,网速如蜗牛,并且下载经常中断,更可恨的是面对这样的中断,没有一个下载软件会发现并报告出现错误。也就是说,当我要下载一个较大的文件时,要每隔十分钟来个重新启动下载。
3 网速快了,也有问题。我的亲戚家转了ADSL宽带,网速好快,但经常发现明明文件没下载完,软件就报告正常下载完了。
所以我用perl写了个监控器,在windows xp下运行(因为家里没上网,学校里的电脑是公用的)。要求安装activeperl和wget的windows版,关机的就是那个“超快关机”的软件,这个可以改别的。
程序思路是每隔两分钟看看下载的文件长度变化没有,没有变化的就重启下载。直到文件长度与wget报告的一致为止。
这是个很粗糙的设计原型,目的仅在于验证这个想法是否可行,同时也是我的第一个perl脚本。风格和代码都极差,望大家帮助改进。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|