这个urllib2 Python代码会下载文件的页面吗?
urllib2.urlopen(theurl).read() ...这个命令会下载文件。
urllib2.urlopen(theurl).geturl()...这个命令会下载文件吗?(需要多长时间)
5 个回答
4
用 Wireshark 和 Python 2.5 测试过:urllib2.urlopen(theurl).geturl()
这个方法会下载 一部分 的内容。它会发送一个 GET
请求,读取响应的头部和几千字节的内容,然后就停止了。
5
来自文档的内容:
geturl()这个方法可以返回页面的真实网址。有时候,HTTP服务器会把用户重定向到另一个网址。虽然urlopen()函数会自动处理这种情况,但有时候调用这个函数的人需要知道用户被重定向到了哪个网址。这时候就可以用geturl()方法来获取这个被重定向的网址。
3
它并没有。
对我来说,在google.com上的测试:
x= time.time(); urllib2.urlopen("http://www.google.com").read(); print time.time()-x
0.166881084442
x= time.time(); urllib2.urlopen("http://www.google.com").geturl(); print time.time()-x
0.0772399902344