为什么 urllib2 需要很长时间才能阅读?

why is urllib2 taking a long time to read?

我正在编写一个简单的程序来比较 HTML 页,但我目前的瓶颈是读取 HTML 文件。具体代码:

    htmldata1 = urllib2.urlopen(url1).read()
    htmldata2 = urllib2.urlopen(url2).read()

url 来自 IMDB。我不知道为什么要花这么长时间(平均约 9 秒)。当我只想使用正则表达式搜索 html 文本时,它可能正在下载图像。我从未使用过 urllib2,因此我们将不胜感激。

编辑:

我使用的一个例子url是

"http://www.imdb.com/title/tt0944947/fullcredits?ref_=tt_cl_sm#cast"

页面加载速度非常慢(在服务器端)。这是千兆光纤:

In [4]: url1 = "http://www.imdb.com/title/tt0944947/fullcredits?ref_=tt_cl_sm#cast"

In [5]: %time result = urllib2.urlopen(url1).read()
CPU times: user 56.3 ms, sys: 21.6 ms, total: 77.9 ms
Wall time: 2.16 s

In [7]: %time result2 = requests.get(url1)
CPU times: user 29.5 ms, sys: 6.35 ms, total: 35.9 ms
Wall time: 2.18 s

完全在 python 之外:

$ time curl -o/dev/null "http://www.imdb.com/title/tt0944947/fullcredits?ref_=tt_cl_sm#cast"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2173k    0 2173k    0     0   537k      0 --:--:--  0:00:04 --:--:--  540k
curl -o/dev/null   0.01s user 0.03s system 0% cpu 4.074 total