写自己的下载程序[一]——Perl使用socket方式htt..
时间:2010-08-06 来源:lanmeibanban
#!perl! |
这么一个简单的脚本学到了很多东西。包括http的协议等,很多都是重新仔细看的。以前没有注意,用到的时候方恨知道的少了。
写这个脚本的时候主要遇到几个问题:
1.一开始老是只能读取html页面(返回200),却不能读出二进制文件(返回400)。找了半天毛病,最后才知道是http的请求构建的有问题。大概对面的服务器不知道我在干嘛。不仔细学习HTTP协议是不行的。
2.如何读取远程文件并写入本地文件。我想这个方法有很多了。但是为了下一步准备,我还是选择了sysread和syswrite的方法。因为我打算用syseek来重定位指针。这样希望可以实现分块下载的目的。而且有些读入和写文件的方法写完的文件是损坏的,不知道是什么问题。可能用法不对。现在这段是摘自大骆驼书上的函数说明里的用法。不知道有没有更简洁的写法。不过这么写确实没有问题。有很多细节还需要消化。还不是很明白。
好久没复习多线程了,下一步希望能通过多线程实现对大文件的分块下载。
要学的东西还很多啊。。。 O(∩_∩)O
by lanmeibanban
2010-08-06
最后附个源码吧~
|