- 帖子
- 15
- 精华
- 0
- 积分
- 98
- 阅读权限
- 20
- 注册时间
- 2017-11-30
- 最后登录
- 2022-1-5
|
两个问题,如下
request.Request与urllib.request.Request什么区别
request.urlopen与urllib.request.urlopen什么区别
心里一直默认他们的没区别的.....今天发现两个好像不能相互替代,那区别是啥?=-=
例如代码为:
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":
req = request.Request("http://fanyi.baidu.com/")
response = request.urlopen(req)
print("geturl打印信息:%s"%(response.geturl()))
print('**********************************************')
print("info打印信息:%s"%(response.info()))
print('**********************************************')
print("getcode打印信息:%s"%(response.getcode()))
输出会为:
geturl打印信息:http://fanyi.baidu.com/
**********************************************
info打印信息:Content-Type: text/html
Date: Sat, 17 Feb 2018 04:46:23 GMT
P3p: CP=" OTI DSP COR IVA OUR IND COM "
Server: Apache
Set-Cookie: locale=zh; expires=Fri, 14-Dec-2018 04:46:23 GMT; path=/; domain=.baidu.com
Set-Cookie: BAIDUID=F45F8D5AA1B38BB7982C05CEDC72289B:FG=1; expires=Sun, 17-Feb-19 04:46:23 GMT; max-age=31536000; path=/; domain=.baidu.com; version=1
Vary: Accept-Encoding
Connection: close
Transfer-Encoding: chunked
**********************************************
getcode打印信息:200
[Finished in 0.5s]
这个没问题,然后我发现加上一个urllib前缀就不对了,即变为如下:
# -*- coding: UTF-8 -*-
from urllib import request
if __name__ == "__main__":
req = urllib.request.Request("http://fanyi.baidu.com/")#就这里变了
response = urllib.request.urlopen(req)#就这里变了
print("geturl打印信息:%s"%(response.geturl()))
print('**********************************************')
print("info打印信息:%s"%(response.info()))
print('**********************************************')
print("getcode打印信息:%s"%(response.getcode()))
运行会报错:
Traceback (most recent call last):
File "D:\Documents\sublime\pachong\55.py", line 5, in <module>
req = urllib.request.Request("http://fanyi.baidu.com/")
NameError: name 'urllib' is not defined
[Finished in 0.3s]
=-=不是导入了urllib.request吗,为什么说not defined?
=-=弱弱的问一句,到底是什么导致了他们不同?
|
|