Python urllib.request.urlopen()做什么?

Python urllib.request.urlopen()做什么?,python,urllib,Python,Urllib,在Python3中,urllib.request模块中的urlopen函数是否检索URL的目标,或者只是作为文件句柄打开与URL的连接,或者我是否完全丢失了它?我想了解它是如何工作的 基本上,我想找出从URL下载文件所需的时间。我该怎么做呢 这是我的密码: 版本1 版本2 从: 打开URL,它可以是字符串或请求对象 此函数返回一个类似文件的对象,该对象包含三个附加方法: geturl()-返回检索到的资源的URL,通常用于确定是否遵循了重定向 info()-以mimetools.Messag

在Python3中,urllib.request模块中的urlopen函数是否检索URL的目标,或者只是作为文件句柄打开与URL的连接,或者我是否完全丢失了它?我想了解它是如何工作的

基本上,我想找出从URL下载文件所需的时间。我该怎么做呢

这是我的密码:

版本1

版本2

从:

打开URL,它可以是字符串或请求对象

此函数返回一个类似文件的对象,该对象包含三个附加方法:

  • geturl()-返回检索到的资源的URL,通常用于确定是否遵循了重定向
  • info()-以mimetools.Message实例的形式返回页面的元信息,如标题(请参阅HTTP标题的快速参考)
  • getcode()-返回响应的HTTP状态代码
另外请注意,在Python 3.0中,
urllib.request.urlopen()
urllib.urlopen()
是等效的

编辑因此,要
时间
它:

# urllib.request for < python 3.0
import urllib
import time

start = time.time()

# urllib.request.urlopen() for < python 3.0
response = urllib.urlopen('http://example.com/')
data = response.read() # a `bytes` object
end = time.time()

duration = end - start
#urllib.request for
来自:

打开URL,它可以是字符串或请求对象

此函数返回一个类似文件的对象,该对象包含三个附加方法:

  • geturl()-返回检索到的资源的URL,通常用于确定是否遵循了重定向
  • info()-以mimetools.Message实例的形式返回页面的元信息,如标题(请参阅HTTP标题的快速参考)
  • getcode()-返回响应的HTTP状态代码
另外请注意,在Python 3.0中,
urllib.request.urlopen()
urllib.urlopen()
是等效的

编辑因此,要
时间
它:

# urllib.request for < python 3.0
import urllib
import time

start = time.time()

# urllib.request.urlopen() for < python 3.0
response = urllib.urlopen('http://example.com/')
data = response.read() # a `bytes` object
end = time.time()

duration = end - start
#urllib.request for
请原谅我的无知。因此,用外行术语来说,urlopen()打开到url和响应的连接。read()实际下载数据吗?@Shankar Correct。最后一个代码块应该可以用于测试从
.urlopen()
中的url下载文件需要多长时间。记住,时间可能会有所不同!也许把它变成一个函数,然后调用几次以获得“平均”速度。请原谅我的无知。因此,用外行术语来说,urlopen()打开到url和响应的连接。read()实际下载数据吗?@Shankar Correct。最后一个代码块应该可以用于测试从
.urlopen()
中的url下载文件需要多长时间。记住,时间可能会有所不同!也许把它变成一个函数,然后调用几次以获得“平均”速度。
# urllib.request for < python 3.0
import urllib
import time

start = time.time()

# urllib.request.urlopen() for < python 3.0
response = urllib.urlopen('http://example.com/')
data = response.read() # a `bytes` object
end = time.time()

duration = end - start