关于python urllib2的问题
时间:2011-09-27
来源:互联网
废话不说,上代码
import urllib2
url = r"http://localhost:8080/manager/reload?path=/Chablis"
username = "username"
password = "password"
password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
password_mgr.add_password(None,url,username,password)
handler = urllib2.HTTPBasicAuthHandler(password_mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
req = urllib2.Request(url)
print req
fd = urllib2.urlopen(req)
print fd
while True:
data = fd.read(1024)
if not len(data):
break
print data
---------------------------懂的人一看就知道这个脚本是干嘛用的----------------------------
Windows下运行这个脚本是OK的
但我把脚本放在linux上,报错:
Traceback (most recent call last):
File "tomcatReload.py", line 13, in ?
fd = urllib2.urlopen(req)
File "/usr/lib/python2.3/urllib2.py", line 129, in urlopen
return _opener.open(url, data)
File "/usr/lib/python2.3/urllib2.py", line 326, in open
'_open', req)
File "/usr/lib/python2.3/urllib2.py", line 306, in _call_chain
result = func(*args)
File "/usr/lib/python2.3/urllib2.py", line 901, in http_open
return self.do_open(httplib.HTTP, req)
File "/usr/lib/python2.3/urllib2.py", line 895, in do_open
return self.parent.error('http', req, fp, code, msg, hdrs)
File "/usr/lib/python2.3/urllib2.py", line 352, in error
return self._call_chain(*args)
File "/usr/lib/python2.3/urllib2.py", line 306, in _call_chain
result = func(*args)
File "/usr/lib/python2.3/urllib2.py", line 412, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 401: Unauthorized
很明显:是鉴权错误!(PS:用户名,密码并没有错,url,端口也都是正常的。我在linux上的tomcat/conf/user_tomcat.xml也进行注册过)
我总结下来,可能会有2个问题:
1,python版本问题,windows上是python2.5 linux 上是python2.3
2, 编码问题
我更加倾向于后者。有木有懂的大神,求解决办法
import urllib2
url = r"http://localhost:8080/manager/reload?path=/Chablis"
username = "username"
password = "password"
password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
password_mgr.add_password(None,url,username,password)
handler = urllib2.HTTPBasicAuthHandler(password_mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
req = urllib2.Request(url)
print req
fd = urllib2.urlopen(req)
print fd
while True:
data = fd.read(1024)
if not len(data):
break
print data
---------------------------懂的人一看就知道这个脚本是干嘛用的----------------------------
Windows下运行这个脚本是OK的
但我把脚本放在linux上,报错:
Traceback (most recent call last):
File "tomcatReload.py", line 13, in ?
fd = urllib2.urlopen(req)
File "/usr/lib/python2.3/urllib2.py", line 129, in urlopen
return _opener.open(url, data)
File "/usr/lib/python2.3/urllib2.py", line 326, in open
'_open', req)
File "/usr/lib/python2.3/urllib2.py", line 306, in _call_chain
result = func(*args)
File "/usr/lib/python2.3/urllib2.py", line 901, in http_open
return self.do_open(httplib.HTTP, req)
File "/usr/lib/python2.3/urllib2.py", line 895, in do_open
return self.parent.error('http', req, fp, code, msg, hdrs)
File "/usr/lib/python2.3/urllib2.py", line 352, in error
return self._call_chain(*args)
File "/usr/lib/python2.3/urllib2.py", line 306, in _call_chain
result = func(*args)
File "/usr/lib/python2.3/urllib2.py", line 412, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 401: Unauthorized
很明显:是鉴权错误!(PS:用户名,密码并没有错,url,端口也都是正常的。我在linux上的tomcat/conf/user_tomcat.xml也进行注册过)
我总结下来,可能会有2个问题:
1,python版本问题,windows上是python2.5 linux 上是python2.3
2, 编码问题
我更加倾向于后者。有木有懂的大神,求解决办法
作者: cyl713 发布时间: 2011-09-27
和编码有啥关系?你的用户名和密码用的是中文?
Python版本的可能性更大。你升级下吧。没人愿意浪费时间在一个已经被废弃了这么多年的python版本上。
Python版本的可能性更大。你升级下吧。没人愿意浪费时间在一个已经被废弃了这么多年的python版本上。
作者: iambic 发布时间: 2011-09-27
用户名和密码不是中午!
关键服务器有几千台,都升级的话。亚历山大
关键服务器有几千台,都升级的话。亚历山大
作者: cyl713 发布时间: 2011-09-27
用户名和密码不是中文。但是报鉴权错误。
顺便说一下,第一个print 是可以打印出来的,说明可以request并且已经提交! 只是无法获得页面返回的结果
这也是我认为可能编码问题存在的可能更大一点的原因
顺便说一下,第一个print 是可以打印出来的,说明可以request并且已经提交! 只是无法获得页面返回的结果
这也是我认为可能编码问题存在的可能更大一点的原因
作者: cyl713 发布时间: 2011-09-27
你先升级一台,确认是不是版本的问题。如果你因畏惧而拒绝尝试的话,会离真相越来越远。
作者: iambic 发布时间: 2011-09-27
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28