【发布时间】:2009-06-10 10:18:59
【问题描述】:
我的任务是从网站下载 Gbs 的数据。数据为 .gz 文件,每个文件大小为 45mb。
获取文件的简单方法是使用“wget -r -np -A files url”。这将以递归格式下载数据并镜像网站。下载速率非常高,4mb/秒。
但是,为了玩耍,我还使用 python 来构建我的 urlparser。
通过 Python 的 urlretrieve 下载速度非常慢,可能是 wget 的 4 倍。下载速率为 500kb/秒。我使用 HTMLParser 来解析 href 标签。
我不确定为什么会这样。有什么设置吗?
谢谢
【问题讨论】:
-
你试过比较 CPU 使用率和 tcpdump 输出吗?
-
什么是 tcpdump?如何获得?
-
我会忽略传输速度(兆字节/MB 和兆比特/Mb 完全不同!)并使用命令
time wget http://example.com/file和time python urlretrieve_downloader.py比较两者 -
啊,我的意思是 500Kb 而已.. 对不起小写...我的错... 都是字节。 .. .5MB/秒和 4Mb/秒
-
两者都以字节为单位?所以你有一个32兆的连接?可能不是。我很确定它是 500 KB 和 4 兆位。似乎太方便了,无法精确减速 1/8。