python wget 401_python – urllib2.HTTPError:HTTP错误401:未经授权

我的要求是从某个网站

http://clientdownload.xyz.com/Documents/abc.zip下载一个abc.zip文件

对于这个活动,我编写了一个python脚本,如下所示:

url_to_check = 'http://clientdownload.xyz.com/Documents/abc.zip'

username = "user"

password = "pwd"

p = urllib2.HTTPPasswordMgrWithDefaultRealm()

p.add_password(None, url_to_check, username, password)

handler = urllib2.HTTPBasicAuthHandler(p)

opener = urllib2.build_opener(handler)

urllib2.install_opener(opener)

zip_file = urllib2.urlopen(url_to_check).read()

file_name = 'somefile.zip'

meta = zip_file.info()

file_size = int(meta.getheaders("Content-Length")[0])

print "Downloading: %s Bytes: %s" % (file_name, file_size)

with open(file_name, 'wb') as dwn_file:

dwn_file.write(zip_file.read())

我在运行脚本时遇到以下错误:

File “updateCheck.py”, line 68, in check_update

zip_file = urllib2.urlopen(url_to_check).read() File “/usr/lib/python2.7/urllib2.py”, line 126, in urlopen

return _opener.open(url, data, timeout) File “/usr/lib/python2.7/urllib2.py”, line 406, in open

response = meth(req, response) File “/usr/lib/python2.7/urllib2.py”, line 519, in http_response

‘http’, request, response, code, msg, hdrs) File “/usr/lib/python2.7/urllib2.py”, line 444, in error

return self._call_chain(*args) File “/usr/lib/python2.7/urllib2.py”, line 378, in _call_chain

result = func(*args) File “/usr/lib/python2.7/urllib2.py”, line 527, in http_error_default

raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) urllib2.HTTPError: HTTP Error 401: Unauthorized

我已正确地给出了用户名和密码,但它会引发未经授权的错误.

当我尝试使用带-http-user和–ask-password选项的wget链接下载它时,我可以下载该文件.

同样使用相同的脚本,我可以正确地从其他服务器下载文件.

我运行此脚本以获取更多信息:

import urllib2, re, time, sys

theurl='http://clientdownload.xxx.com/Documents/Forms/AllItems.aspx'

req = urllib2.Request(theurl)

try:

handle = urllib2.urlopen(req)

except IOError, e:

if hasattr(e, 'code'):

if e.code != 401:

print 'We got another error'

print e.code

else:

print e.headers

print e.headers['www-authenticate']

我收到了以下信息:

Content-Type: text/html; charset=utf-8

Server: Microsoft-IIS/7.5

SPRequestGuid: 939bad00-40b7-49b9-bbbc-99d0267a1004

X-SharePointHealthScore: 0

WWW-Authenticate: NTLM

X-Powered-By: ASP.NET

MicrosoftSharePointTeamServices: 14.0.0.6029

Date: Wed, 12 Feb 2014 13:14:19 GMT

Connection: close

Content-Length: 16

NTLM

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值